资源描述:
《《数据库的实现》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第八章数据库的实现课程内容回顾需求分析阶段,数据库设计的一般步骤有哪些?如何将E-R图转换成数据表?简单描述3大范式本章目标使用SQL语句创建数据库和表使用SQL语句创建约束创建安全帐户的SQL语句数据库基础知识回顾创建数据库时:指定数据库名称主数据库文件和日志文件的名称和大小。数据库文件的组成:主数据文件:*.mdf次要数据文件:*.ndf日志文件:*.ldf数据库的其他主要属性:文件存放位置分配的初始空间,属于哪个文件组。文件的增长设置,可以按百分比或实际大小指定增长速度。文件容量设置,可以指定文件增长的最大值或不受限创建数据库CREATEDATABASE数据库名[O
2、N{PRIMARY(NAME=逻辑文件名,FILENAME=物理文件名[,SIZE=大小][,MAXSIZE={最大容量
3、UNLIMITED}][,FILEGROWTH=增长量])}[,。。。n]][LOGON{(NAME=逻辑文件名,FILENAME=物理文件名[,SIZE=大小][,MAXSIZE={最大容量
4、UNLIMITED}][,FILEGROWTH=增长量])}[,。。。n]]建库语法创建数据库示例1USEmasterGOCREATEDATABASEempDBONPRIMARY--主文件组,不能省略/*--数据文件的具体描述--*/(NAME=’empDB_d
5、ata’,--主数据文件的逻辑名FILENAME=’D:DataempDB_data.mdf’,--主数据文件的物理名SIZE=5MB,--主数据文件的初始大小MAXSIZE=15MB,--主数据文件增长的最大值(UNLIMITED为增长不受限制)FILEGROWTH=20%)--文件的增长率LOGON/*--日志文件的具体描述,各参数含义同上--*/(NAME=’empDB_log’,FILENAME=’D:DataempDB_log.ldf’,SIZE=2MB,MAXSIZE=5MB,FILEGROWTH=1MB)GO演示创建数据库1:一个数据文件和一个日志文
6、件创建数据库示例2USEmasterGOCREATEDATABASEArchiveONPRIMARY/*--主数据文件的具体描述--*/(NAME=Arch1,FILENAME=‘d:dataarchdat1.mdf',SIZE=10MB,MAXSIZE=15,FILEGROWTH=5),/*--次要数据文件1的具体描述--*/(NAME=Arch2,FILENAME=‘d:dataarchdat2.ndf',SIZE=10MB,MAXSIZE=15,FILEGROWTH=5),演示创建数据库2:多个数据文件和多个日志文件创建数据库示例2/*--次要数据文件2的具
7、体描述--*/(NAME=Arch3,FILENAME=‘d:dataarchdat3.ndf',SIZE=10MB,MAXSIZE=15,FILEGROWTH=5),LOGON/*--日志文件1的具体描述--*/(NAME=Archlog1,FILENAME='d:dataarchlog1.ldf',SIZE=5MB,MAXSIZE=10,FILEGROWTH=5),/*--日志文件2的具体描述--*/(NAME=Archlog2,FILENAME='d:dataarchlog2.ldf',SIZE=5MB,MAXSIZE=10,FILEGROWTH=5)G
8、O演示创建数据库2:多个数据文件和多个日志文件删除数据库DROPDATABASEdatabase_name[,.。。。n]USEmasterGODROPDATABASEpubs使用SQL语句创建表建表的步骤确定表中有哪些列确定每列的数据类型给表添加各种约束创建各表之间的关系整型:int,smallint小数:decimal,numeric字符:固定长度:char(6)可变长度:varchar(10)Unicode字符:nvarchar(10)日期:datetime货币:money布尔:Bit–取值为0或1创建表CREATETABLE表名(字段1数据类型列的特征,字段2数据
9、类型列的特征,。。。)语法列的特征包括该列是否为空(NULL)、是否是标识列(自动编号)、是否有默认值、是否为主键等。创建表示例一CREATETABLEDEPT(deptnoINTPRIMARYKEY,--主键(唯一,非空)dnameCHAR(15)NOTNULL,--部门名称,非空(必填)locVARCHAR(30)--部门位置,允许为空,即可选输入)演示创建部门表dept创建表示例二CREATETABLEEMP(empnoINTPRIMARYKEY,--雇员编号,主键enameVARCHAR(10)NOTNULL,--雇员