当前位置:文档之家› 创建数据库的一般步骤

创建数据库的一般步骤

创建数据库得一般步骤:(一)、切换系统数据库use mastergo(二)、判断数据库就是否已有得同名数据库并将其删除(1)、if exists(select*fromsys、sysdatabases where [name]='数据库名称')ﻩdrop database数据库名称go(2)、if(select count(*) from sys、sysdatabases where [name]='数据库名称’)> 0ﻩdrop database 数据库名称go注:sys、sysdatabases:指得就是一个系统视图(3)、ifdb_id('数据库名称')is not nulldrop database数据库名称注意:db_id :就是SQLServer中得一个系统函数,用于返回数据库标识(id)号db_id函数得使用语法:db_id(['数据库名称'])若省略数据库名称则返回当前数据库得id,若查询不到,则返回null(三)、创建文件夹得两种方法:(1)、启用外围配置【此方法适用于找不到“sql server外围应用配置器“得情况】execsp_configure'show advancedoptions',1reconfigureexec sp_configure’xp_cmdshell',1reconfigurego——调用dos命令创建文件夹execxp_cmdshell’mdD:\sql\S2_sql\library’,no_outputgo注意:xp_cmdshell:扩展存储过程(函数),用于执行一个DOS命令exec xp_cmdshell'md或mkdir D:\StuDB'(2)、找到”配置工具”->打开”sql server 外围应用配置器"—〉进入”功能得外围应用配置器”->将”启用xp_cmdshell”打上勾-〉点击应用即可(四)、创建数据库得语法createdatabase数据库名称on [primary]<数据文件参数〉:(name=逻辑名称(管理员用得),[‘、mdf’]绝对路径(物理名称),size=初始大小(mb),maxsize=限制可增长得最大大小(mb),自动增长量(mb/%))Logon<日志文件参数>得语法(name=逻辑名称(管理员用得),[‘ldf']绝对路径(物理名称),size=初始大小(mb),maxsize=限制可增长得最大大小(mb),自动增长量(mb/%))Go注:创建多个次要文件时,需用",”隔开,如:Create database数据库名On primary(ﻩName=’、mdf’…(同上)),a(命名)(ﻩName=’、ndf’、、、、(同上)).。

Log on(…(同上)),(…(同上))删除数据库drop database 数据库名称(数据库名称1,。

,数据库名称n)创建表得一般步骤:(一)、切换所创建得数据库Use 数据库名Go(二)、判断该数据库就是否已存在该表检验得方法:(1)、if exists (select *fromsysobjectswhere name=’表名'andxtyp e=’U')drop table 表名go(2)、if (selectcount(*)from sysobjectswherename=’表名’ andxty pe='U') 〉0ﻩDrop table 表名Go注:每个数据库都有一个系统视图sysobjects,记录了所在数据库得表、约束、视图、存储过程、触发器等对象name:对象名称xtype:类型S:systemtable系统表U:usertable用户表PK:primarykey主键约束CK:check 检查约束FK:foreignkey 外键约束UQ:unique 唯一约束SP:stored procedure存储过程TR:trigger 触发器(3)、ifobject_ID(‘对象名[,’对象类型']’)isnot nullﻩDroptable 表名Go注:object_ID:系统函数,用于返回数据库对象标识号对象名:可为表名、约束名、存储过程名、视图名。

.对象类型:U(用户自定义类型)、V(视图)、C(check约束)..。

(三)、创建表createtable表名(列名数据类型约束(非空、标识列),列名数据类型约束,、、、Go注:在建表时得约束一般只规定非空、标识identity(标识列) 得使用语法:identity[(seed,increment)]seed:标识种子或起始值;increment: 递增量添加约束语法:Alter table表名ﻩAddconstraint 约束名约束类型具体得约束内容,ﻩconstraint 约束名约束类型具体得约束内容,ﻩ.。

Go两个较为特殊约束:默认:alter table 表名addconstraint约束名称default(默认值)for列名外键:alter table表名addconstraint约束名称foreign key(列名)references主表名(引用得列名)约束名得取名则:主键(Primary Key)约束:PK_约束字段唯一(UniqueKey)约束:UK_约束字段默认(Default Key)约束:DK_约束字段检查(Check Key)约束:CK_约束字段外键(Foreign Key)约束:FK_约束字段删除约束Altertable表名Drop constraint 约束名添加列得语法:Altertable 表名Add{字段1数据类型字段特征字段2 数据类型字段特征}注:也可以向现有得表添加列,但相应得列必须允许为null值或就是该列创建了default 约束删除列语法:Alter table表名ﻩDropcolumn {字段}修改列(列名、数据类型、长度、精度、小数位数、可空性)语法:Alter table 表名Alter column字段数据类型[null|not null](1)、修改列得可空性Alter table表名ﻩAltercolumn字段数据类型null(2)、修改列得名称Sp_rename‘object_name’,'new_name'[,’object_type’]注:Sp_rename: 修改列得名称(表、索引、列、数据库名)Object_name:用户对象或数据类型得当前限定或非限定名称New_name:指定对象得新名称Object_type:可选参数,表要重命名得对象得类型,默认值为null删除表:Use 当前数据库GoDrop table 表名Go第一层验证:登录名:SQL验证:自定义名称第三层验证:使用户针对表具备某种权限Grant 权限名称on对象(表) to用户名Revoke权限名称on 对象(表)from用户名Deny权限名称on 对象(表)from用户名利用存储过程完成同样目得:第一层:创建登录名Windows登陆账户(一)、创建Windows登录账户得两种方法:(1)、Exec sp_grantlogin‘计算机名\用户名’(2)、create login 登录名称withpassword=’登录密码'(二)、修改登陆账户Alter login登录名称with <set_option>[…]注:〈set_option> :可为“password=’新密码’ ”或“Name=’新登录名称'”(三)、删除登陆账户Drop login登录名称SQL登陆账户(一)、创建数据库用户得两种方法:(1)、Execsp_addlogin ‘用户名’,’密码’(2)、createuser 用户名称ﻩﻩ[{for |from}login 登录名](二)、修改数据库用户Alter user用户名称Withname=用户新名称(三)、删除数据库用户Drop user用户名称注:Exec:表调用存储过程,类似Java语言得函数创建数据库用户名Execsp_grantdbaccess‘登陆账户名’,'数据库用户名'(数据库用户名为可选参数,默认为登录名,即数据库用户默认与登陆账户同名)授权:(一)、权限得种类1、数据对象权限(DML)注:DML:数据操作语言,即select、update、insert、delete、execute2、语句权限(DDL)注:DDL:数据定义语言,即createdatabase(创建数据库)、createtable(创建表)、createview(创建视图)、create procedure(创建存储过程)、backup datab ase(备份数据库)3、隐含权限(二)、用户权限管理1、授予(grant):对用户授予某种权限2、收回(revoke):对用户收回(即删除)已授予得权限3、禁用(deny):禁止用户拥有某种权限{grant| revoke |deny} 权限[on 表名[字段]] to数据库用户如:Grant 权限[on 表名]to 用户名当分配所有权限给某个用户时,可以使用all语法:Grantall on 表名to用户名T-SQL编程与高级查询一、局部变量1、局部变量:以“”开头定义局部变量得语法:Declare局部变量名数据类型[,局部变量名数据类型。

](1)set 变量名= 值值:可为一个常量、任何有效得表达式、一个返回单值得查询语句(2)select 变量名=值区别:A、set一次只能对一个变量赋值,select可以多个B、set不能用于SQL查询语句中,select可以C、select会产生结果集,效率比set要低3、局部变量得作用域:从声明变量得地方开始到声明变量得批处理或存储过程得结尾。

4、局部变量得应用:(1)作为计数器计算循环执行得次数或控制循环执行得次数;(2)保存数据值以控制流语句测试;(3)保存存储过程要返回得数据值或函数返回值二、全局变量1、全局变量应注意得地方:(1)全局变量不就是由用户得程序定义得,就是在服务器级定义得;(2)用户只能使用预先定义得全局变量;(3)引用全局变量时,必须以标识符“”开头2、常用得全局变量:connections返回SQL Server 自上次启动以来尝试得连接数,无论连接就是成功还就是失败。

error 返回执行上一个T-SQL语句得错误代码。

identity 返回上次插入得标识值。

language 返回当前所用语言得名称。

相关主题