SQL文(ライブラリの作成、テーブルの作成、コメントの書き込み、コメントの取得)
--作成前にクエリが存在するかどうか
--データベースの作成
--データベースの使用
--テーブルの作成
--外部キーの作成
--テーブルの説明情報を追加
--フィールドUt_Email説明情報の追加
--テーブル内のカラムUt_を更新Emailの説明プロパティ:
--Ut_を表示Emailフィールドの説明プロパティ
--テーブルの説明プロパティを表示
--テーブル内のカラムUt_を削除Emailの説明プロパティ
--テーブルの削除
--データベースの削除
--列の追加
--列の削除
--列のプロパティの変更
--新しいストアド・プロシージャ(ストアド・プロシージャでテーブルを作成)
if exists (select * from sys.databases where name="Users( )")
drop database Users( )
go
--データベースの作成
create database Users( )
--データベースの使用
use Users ( )
--テーブルの作成
create table usertable( )
(
Ut_Id int not null primary key identity(1,1), -- , 1
Ut_Email varchar(50) null , -- ( )
Ut_Pwd varchar(50) not null, --
Ut_Sex bit not null default(1), -- ,1 0
Ut_Qq varchar(50) not null, --QQ
Ut_Necessarytext varchar(50) null, --
Ut_Strong_Ct_Id int null, -- , (Fk_UserTable_Ut_Strong_Ct_Id( ))
Ut_Date datetime not null default(getdate()), --
)
--
Create table CoursTable
(
Ct_Id int not null primary key identity(1,1), -- , 1
Ct_Name varchar(30) not null, --
Ct_Date datetime not null default(getdate()), --
)
--外部キーの作成
alter table UserTable
add constraint Fk_UserTable_Ut_Strong_Ct_Id foreign key (Ut_Strong_Ct_Id) references CoursTable (Ct_Id)
--テーブルの説明情報を追加
EXECUTE sp_addextendedproperty N'MS_Description', ' ( )', N'user', N'dbo', N'table', N'usertable( )', NULL, NULL
--フィールドUt_Email説明情報の追加
EXECUTE sp_addextendedproperty N'MS_Description', ' ( )', N'user', N'dbo', N'table', N'usertable( )', N'column', N'Ut_Email( )'
--テーブル内のカラムUt_を更新Emailの説明プロパティ:
EXEC sp_updateextendedproperty 'MS_Description',' ','user',dbo,'table','usertable( )','column',Ut_Email( )
--Ut_を表示Emailフィールドの説明プロパティ
SELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table','usertable( )', 'column', 'Ut_Email( )')
--テーブルの説明プロパティを表示
SELECT *
FROM ::fn_listextendedproperty (NULL, 'user', 'dbo', 'table','usertable( )', NULL, NULL)
--テーブル内のカラムUt_を削除Emailの説明プロパティ
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','usertable( )','column',Ut_Email( )
--テーブルの削除
drop table usertable( )
--データベースの削除
drop database Users( )
--列の追加
ALTER TABLE Admin_Login ADD AdminName nvarchar(50) not null
--列の削除
ALTER TABLE Admin_Login DROP COLUMN AdminName
--列のプロパティの変更
ALTER TABLE Admin_Login ALTER COLUMN AdminName varchar(50)
--新しいストアド・プロシージャ(ストアド・プロシージャでテーブルを作成)
Create procedure CreateTable( )
(
@tablename nvarchar(50)( )
)
as( )
declare @table nvarchar(1500)( )
set @table = '
Create table [' + @tablename + 'Article]
(
Article_ID int not null primary key identity(1,1),
Article_Head nvarchar(20) not null,
Article_Text text not null,
Article_ListID int not null,
Article_Time datetime not null default(getdate()),
Article_Delete bit not null default(0),
)
Create table [' + @tablename + 'Photos]
(
Photos_ID int not null primary key identity(1,1),
Photos_Url nvarchar(50) not null,
Photos_Description nvarchar(50) null,
Photos_Time datetime not null default(getdate()),
Photos_Delete bit not null default(0),
)
Create table [' + @tablename + 'Moods]
(
Moods_ID int not null primary key identity(1,1),
Moods_Text nvarchar(50) not null,
Moods_Time datetime not null default(getdate()),
Moods_Delete bit not null default(0),
)
Create table [' + @tablename + 'List]
(
List_ID int not null primary key identity(1,1),
List_Text nvarchar(20) not null,
List_Time datetime not null default(getdate()),
List_Delete bit not null default(0),
)
alter table [' + @tablename + 'Article]
add constraint Fk_Article_Article_ListID_List_List_ID foreign key
(Article_ListID) references [' + @tablename + 'List] (List_ID)
'( @table )
exec(@table) ( sql )