数据库的实现

添加数据

insert into 表名 (字段1) values(值1)
insert into stuinfo (stuname,stuno,stuage) values ('张三','s25010','22') 

>[2]更新数据

update 表名 set 字段1=值1,………,where (条件)
update stuinfo set stuage = 25 where stuname = '张三'

>[3]查询数据

select 字段1,字段2,………,from 表名 where 条件 order by 字段名
select stuname,stuno from stuinfo where stuage < 25 order by stuno

>[4]删除数据

delete from 表名 where 条件
delete from stuinfo where stuage < 20


………………………………………………………………………………………………………………………………


>[5]创造数据库

create database studb
on primary
(
name = 'studb_data',-----主数据文件的逻辑名
filename = 'D:\project\studb_data.mdf',-----主数据文件的物理名
size = 5mb,-----主数据文件的初始大小
maxsize = 100mb,-----主数据文件增长的最大值
filegrowth = 15%-----主数据文件的增长率
)
log on
(
name = 'studb_log',
filename = 'D:\project\studb_log.ldf',
size = 5mb,
filegrowth = 1mb
)
go


………………………………………………………………………………………………………………………………


>[6]创建多个数据文件和多个日志文件

create database employees
on primary
(
name = 'employee1',
filename = 'D:\project\employee1_data.mdf',
size = 5mb,
filegrowth = 10%
),
(
name = 'employee2',
filename = 'D:\project\employee2_data.ndf'
size = 20mb,
maxsize = 10%,
filegrowth = 1
)
log on
(
name = 'employeelog1',
filename = 'D:\project\employeelog1_log.ldf',
size = 10mb,
filegrowth = 1
)
(
name = 'employeelog2',
filename = 'D:\project\employeelog2_log.ldf',
size = 10mb,
maxsize = 50mb,
filegrowth = 1
)
go


………………………………………………………………………………………………………………………………


>[7]删除数据库

drop database 数据库名
drop database studb

use master-----以便访问SYSDATABASES表
go
if exists (select * from sysdatabases where name = 'studb')
drop database studb
create database studb
on primary
(
………略………
)
log on
(
………略………
)
go


………………………………………………………………………………………………………………………………


>[8]创建表

create table 表名
(
字段1 数据类型 列的特征
字段2 数据类型 列的特征
………
)

use studb
go
create table stuinfo
(
stuname varchar(20) not null,
stuno char(6) not null,
stuage int not null,
stuid numeric(18,0),-----身份证号,numeric(18,0)代表18位数字,小数位数为0
stuseat smallint identity(1,1),-----座位号,自动编号(标识列),从1开始递增
stuaddress text
)
go


………………………………………………………………………………………………………………………………


>[9]删除表

use studb
go
if exists (select * from sysobject where name = 'stuinfo')
drop table stuinfo
create table stuinfo
(
………略………
)
go


………………………………………………………………………………………………………………………………


>[10]创建和删除约束

1. 主键约束(primary key constraint):要求主键列数据唯一,并且不允许为空
2. 唯一约束(unique constraint):要求该列唯一,允许为空,但只能出现一个空值
3. 检查约束(check constraint):某列取值范围限制,格式限制等…
4. 默认约束(default constraint):某列的默认值
5. 外键约束(foreign key constraint):用于在俩表间建立关系,需要指定引用主表的哪列

添加表约束
alter table 表名
add constraint 约束名 约束类型 具体的约束说明

alter table stuinfo
add constraint pk_stuno primary key (stuno)

删除表约束
alter table 表名
drop constraint 约束名

alter table stuinfo
drop constraint pk_stuno


………………………………………………………………………………………………………………………………


>[11]创建登陆帐户

添加windows登陆帐户
exec sp_grantlogin 'windows域名'
exec sp_grantlogin 'kongjian\monvb'-----windows 用户为kongjian\monvb,kongjian表示域

添加SQL登陆帐户
exec sp_addlogin '帐户名','密码'
exec sp_addlogin 'zhangsan','123'


………………………………………………………………………………………………………………………………


>[12]创建数据库用户

exec sp_grantdbaccess '登陆帐户','数据库用户'

use studb
go
exec sp_grantdbaccess 'kongjian\monvb','monvb'


………………………………………………………………………………………………………………………………


>[13]向数据库用户授权

grant 权限 on 表名 to 数据库用户

use studb
go
grant insert,delete,updata,select on stuinfo to monvb-----为数据库用户monvb授权对表进行增,删,改,查的权限
grant create table to monvb-----为数据库用户monvb授权建表的权限

posted on 2010-04-17 19:59  记住昨天,迎接明天  阅读(132)  评论(0编辑  收藏  举报