创建数据库

       create database 数据库名

       on [primary]

              (name=数据文件的逻辑名称,

              filename=数据文件的物理名称,.mdf--dbf

              size=数据文件初始大小,

              maxsize=数据文件最大值|Unlimited(无限制),

              filegrowth=数据文件增长值或增长比率)—如果要创建多个数据文件,用逗号隔开,参数名称同上

       log on

              (name=日志文件名,

              filename=盘符:/目录/数据文件名.ldf--log

              size=日志文件初始值,

              maxsize=日志文件最大值,

              filegrowth=日志文件增长值或增长比率) —如果要创建多个数据文件,参数名称同上,不要用逗号隔开

 

 

删除数据库

       Drop database 数据库名

 

判断数据库是否存在,使用Exists查询语句

       例如:判断MySchool数据库是否存在

              1>先选择master数据库,以便访问sysdatabases表

                     Use master—选择数据库

              2>if exists(select * from sysdatabases where name=’MySchool’)

                     如果查询语句返回的结果不为空,则表示存在;否则表示不存在

       --Microsoft SQL Server 2005 实例中的每个数据库在该表中各对应一行。在最初安装 SQL Server 时,sysdatabases 包含 master、model、msdb 和 tempdb 数据库项

 

创建表:

       Create table 表名

       (字段名1  数据类型 列的特征,

       字段名2数据类型 列的特征,

       ……….标识列--序列

       )

 

删除表:

判断删除的表是否存在

       Select * from sysobjects where name=’要删除的表’

--在数据库中创建的每个对象(例如约束、默认值、日志、规则以及存储过程)在sysobjects表中都对应一行

2>如果上面的查询不为空,则使用drop table 表名 来删除表

 

为表添加约束

主键约束(PK)

       Alter table 表名 add constraint 主键约束名 primary key(添加主键约束的字段名)

 

唯一约束(UQ)

       Alter table 表名 add constraint 唯一约束名 unique(添加唯一约束的字段名)

 

检查约束(CK)

       Alter table 表名 add constraint 检查约束名check(表达式)

 

默认约束(DF)

       Alter table 表名 add [constraint] 默认约束名 Default(默认的值) for 字段名

 

外键约束(FK)

       Alter table 子表名 add [constraint] 外键约束名 Foreign key(公共字段) references 主表名 (公共字段)

 

删除约束--sysobjects

        ---判断约束名是否存在和判断表是否存在方法相同

       Alter table 表名 drop constraint 约束名

 

创建登录帐户

windows身份验证:

       Exec sp_grantlogin ‘windows域名/域帐户’

       --如果是本机,域名可用计算机名代替

SQLServer身份验证:

       Exec  sp_addlogin  ‘帐户名’,’密码’

              DROP LOGIN 登录名—删除登录名

 

创建数据库用户

       Exec sp_grantdbaccess  ‘登录帐户’,’数据库用户’

-数据库用户为可选参数,默认为登录帐户

 

删除数据库用户

sp_dropuser 数据库用户名

 

给数据库用户授权

Grant insert|delete|update|select 

 [on 表名] to 数据库用户

 

撤销用户相关权限

Revoke insert|delete|update|select  [on 表名] from数据库用户

 

 

创建索引—索引存放在系统表Sysindexes中

Create [Unique][Clustered| NonClustered] index 索引名

On 表名(列名1,列名2…)

[with fillfactor= 填充因子(0-100之间)的值

 

创建视图-视图存放在系统表SysObjects中

Create View 视图名

As

Select 语句

      

 

 

创建不带参数的存储过程

Create Procedure 存储过程名

[with Encryption]

As

sql语句

14、       执行不带参数的存储过程

[Exec] 存储过程名

 

15、       创建带输入参数或输出参数的存储过程

                     Create procedure 存储过程名

                            @参数1 数据类型[=默认值][output],

                            @参数n 数据类型[=默认值] [output]

                     As

                            Sql语句

注意:存储过程参数个数,最多为2100个,最大可以为128MB,存储过程可相互嵌套,嵌套级别最多为32级

16、       执行带参数的存储过程

[Exec] 存储过程名 参数值列表[output]

 

删除存储过程

Drop proc[edure] 存储过程名

 

 

补充知识点:

以下sql语句操作的前提是,表中没有任何数据

1、修改现有表的字段属性

Alter  table 表名 alter column

列名 数据类型 是否为空

 

2、为现有表添加新字段

Alter  table 表名 add 字段名 数据类型 是否为空

 

3、删除表中的字段

Alter  table 表名 drop column 字段名

 

4、触发器:相关知识,请通过查阅SQLServer2005帮助文档了解