screwturn-4/SqlServerProviders/FilesDatabase.sql
2009-09-30 13:47:13 +00:00

47 lines
1.4 KiB
SQL

create table [Directory] (
[FullPath] nvarchar(250) not null,
[Parent] nvarchar(250),
constraint [PK_Directory] primary key clustered ([FullPath])
)
create table [File] (
[Name] nvarchar(200) not null,
[Directory] nvarchar(250) not null
constraint [FK_File_Directory] references [Directory]([FullPath])
on delete cascade on update cascade,
[Size] bigint not null,
[Downloads] int not null,
[LastModified] datetime not null,
[Data] varbinary(max) not null,
constraint [PK_File] primary key clustered ([Name], [Directory])
)
create table [Attachment] (
[Name] nvarchar(200) not null,
[Page] nvarchar(200) not null,
[Size] bigint not null,
[Downloads] int not null,
[LastModified] datetime not null,
[Data] varbinary(max) not null,
constraint[PK_Attachment] primary key clustered ([Name], [Page])
)
if (select count(*) from sys.tables where [Name] = 'Version') = 0
begin
create table [Version] (
[Component] varchar(100) not null,
[Version] int not null,
constraint [PK_Version] primary key clustered ([Component])
)
end
if (select count([Version]) from [Version] where [Component] = 'Files') = 0
begin
insert into [Version] ([Component], [Version]) values ('Files', 3000)
end
if (select count([FullPath]) from [Directory] where [FullPath] = '/') = 0
begin
insert into [Directory] ([FullPath], [Parent]) values ('/', NULL)
end