SQL创建/修改数据库、表

时间:2023-03-09 00:59:48
SQL创建/修改数据库、表
--创建表
create table 表(a1 varchar(10),a2 char(2)) --为表添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '人员信息表', N'user', N'dbo', N'table', N'表', NULL, NULL --为字段a1添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '姓名', N'user', N'dbo', N'table', N'表', N'column', N'a1' --为字段a2添加描述信息
EXECUTE sp_addextendedproperty N'MS_Description', '性别', N'user', N'dbo', N'table', N'表', N'column', N'a2' --更新表中列a1的描述属性:
EXEC sp_updateextendedproperty 'MS_Description','字段1','user',dbo,'table','表','column',a1 --删除表中列a1的描述属性:
EXEC sp_dropextendedproperty 'MS_Description','user',dbo,'table','表','column',a1 -- T_WORKINFO_TEMPLATE 工作信息模板 IF OBJECT_ID('T_WORKINFO_TEMPLATE') IS NOT NULL DROP TABLE T_WORKINFO_TEMPLATE
GO CREATE TABLE T_WORKINFO_TEMPLATE
(
WORKINFO_TEMPLATE_ID CHAR(36) PRIMARY KEY, -- 主键
COMPONENTREFERENCE VARCHAR(400), -- 相关设备
ITEMNAME VARCHAR(200), --
ITEMCONTENT VARCHAR(2000), -- 保养内容
PERIOD NUMERIC(9,2), -- 预检周期
PERIODICAL VARCHAR(10), -- 周期的单位,数据取T_PERIODICAL
REMARK VARCHAR(4000), -- 备注
CLASS VARCHAR(20) -- 类别
) ON [PRIMARY]
GO exec sp_addextendedproperty N'MS_Description', N'主键', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'WORKINFO_TEMPLATE_ID'
exec sp_addextendedproperty N'MS_Description', N'相关设备', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'COMPONENTREFERENCE'
exec sp_addextendedproperty N'MS_Description', N'保养项目', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'ITEMNAME'
exec sp_addextendedproperty N'MS_Description', N'保养内容', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'ITEMCONTENT'
exec sp_addextendedproperty N'MS_Description', N'预检周期', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'PERIOD'
exec sp_addextendedproperty N'MS_Description', N'周期的单位,数据取T_PERIODICAL', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'PERIODICAL'
exec sp_addextendedproperty N'MS_Description', N'备注', N'user', N'dbo', N'table', N'T_WORKINFO_TEMPLATE', N'column', N'REMARK'
GO ALTER TABLE 表 ADD table1_cn char(200) --添加字段
ALTER TABLE 表 DROP COLUMN table1_cn --删除字段
ALTER TABLE 表 ALTER COLUMN table1_cn NVARCHAR(50) --修改字段类型
EXEC sp_rename '表.table1_cn', 'filedName2', 'COLUMN' --修改字段名
drop table 表 --删除表 --判断某表中字段filedName1是否存在
if exists (select * from syscolumns where id=object_id('表') and name='filedName2')
print
'字段已存在'
else print
'字段不存在' --列出表出所有字段名
select name from syscolumns where id=object_id('SMenuList') --添加主键
Alter table tabname add primary key(col)
--删除主键
Alter table tabname drop primary key(col)
--创建索引
create [unique] index idxname on tabname(col)
--删除索引
drop index idxname /*创建bbsDB数据库*/
use master
if exists(select * from sysdatabases where name='bbsDB')
begin
Print '数据库已经创建,无法重新创建'
end
else
begin create database bbsDB
on
(
name='bbsDB_data',
filename='F:\MS Server DB\bbsDB_data.mdf',
size=10,
filegrowth=20%
)
log on
(
name='bbsDB_log',
filename='F:\MS Server DB\bbsDB_log.ldf',
size=3,
maxsize=20,
filegrowth=10%
)
Print '数据库创建完成'
end --drop database bbsDB