使用T-SQL语句创建库,表,帐户,用户,授权的详细操作

来源:互联网 发布:巴宝莉风衣 知乎 编辑:程序博客网 时间:2024/05/16 07:57

使用T-SQL语句创建库,表,帐户,用户,授权的详细操作



--跳转到master数据库
use master
go
--判断如果存在Number数据库就输出
if exists(select name from sysdatabases where name = 'Number')
drop database Number
go
--创建数据库NumberOne
create database Number
on primary
(
name = 'number_data',filename = 'E:\Two\number_data.mdf',size = 2mb,maxsize = 5mb,filegrowth = 10%
)
log on
(
name = 'number_log',filename = 'E:\Two\number_log.ldf',size = 1mb,filegrowth = 1mb
)
go
--跳转到相对应的数据库,进行下边的操作
use Number
go
--判断是否已经有numOne表单存在,如果存在就先删除
if exists(select name from sysobjects where name = 'numOne')
drop table numOne
go
--创建学生表单numOne(学生信息表)
create table numOne
(
nuName varchar(20) not null,--学生姓名
nuNo int not null,--学号
nuAgs int not null,--学生年龄
nuId numeric(19,0),--身份证编号
nuSeat int not null,--座位编号
nuAddress varchar(50)--学生地址
)
go
--先判断数据库中是否已经存在numTwo表单,如果存在就先输出
if exists(select name from sysobjects where name = 'numTwo')
drop table numTwo
go
--通过上述的的if语句的判断之后就创建表单numTwo(学生成绩表)
create table numTwo
(
ntNo int not null,--考试编号
nuNo int not null,--学生学号
ntGrade int not null--学生成绩
)
go

-- /* 添加约束的语法为(alter table 表名     add constraint 约束名 约束类型 为添加约束的说明<也就是相应的字段>) */

--向学生信息表nuNo字段添加主键约束
alter table numOne
add constraint PK_nuNo primary key(nuNo)
--向学生成绩表nuNo字段添加外键约束
alter table numTwo
add constraint FK_nuNo foreign key(nuNo) references numOne(nuNo)
--向学生信息表nuAgs字段添加检查约束
alter table numOne
add constraint CK_nuAgs check(nuAgs between 15 and 30)
--向学生信息表nuId字段添加唯一约束
alter table numOne
add constraint UQ_nuId unique(nuId)
--向学生信息表nuAddress字段添加默认约束
alter table numOne
add constraint DF_nuAddress default('现在地址还不确定') for nuAddress
go
-- /* 输出约束的语法为(alter table 表名     drop constraint 约束名称<例如上述创建的:DF_nuAddress>) */

--删除主键约束
alter table numOne
drop constraint PK_nuNo
--删除外键约束
alter table numTwo
drop constraint FK_nuNo
--删除检查约束
alter table numOne
drop constraint CK_nuAgs
--删除默认约束
alter table numOne
drop constraint UQ_nuId
--删除学生信息表中的默认约束
alter table numOne
drop constraint DF_nuAddress
go
--创建登录帐户

/* Windows帐户的语法为(exec sp_grantlogin '本计算机名\系统登录帐户') */

--这种方法创建好后登录帐户,需要重新启动计算机才生效

/* SQL帐户的语法为(exec sp_addlogin '帐户名','密码')*/

exec sp_addlogin 'suifeng','piaoyi'
go
--创建数据库的用户

/* 语法为(exec sp_grantdbaccess '帐户<你要为哪个帐户授权>','数据库用户<你所要创建的>')*/

exec sp_grantdbaccess 'suifeng','admin'
go
--为上述创建的数据库用户授权

/* 授权的语法为(grant 权限<包括:insert插入    select查询 update更新 delete删除> on 表名<一个数据库有多张表单,你要给开放哪张表> to 数据库用户)*/

grant insert,update,delete,select on numOne to admin

/* 如果数据库用户需要创建表的权限,语法为(grant create table to 数据库用户)*/

grant create table to admin
go

原创粉丝点击