资源描述:
《数据库原理实验指导精编》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验一1•实验名称:启动MicrosoftSQLServer2000,创建数据库。2•实验要求:掌握注册与配置服务器、创建和管理数据库的方法,要求学生以自己的姓名作为数据库名,创建一个学生管理数据库。3.实验仪器:以MicrosoftSQLServer2000或Windows2000Server为平台的软件环境;以服务器、客户机连接成局域网结构的硬件环境。4.实验内容:(1)启动SQLServer;(2)注册与配置服务器;(3)创建数据库;(4)管理与维护数据库。5.实验重点:掌握注册与配置服务器。6.实验课时:2课时7.实验类型:验证实验&实验指导:创建数据库的语句有如下儿种:1.CREAT
2、ETABLE(创建新表)2.CREATEINDEX(增加索引)3.DROPINDEX(删除索引)4.CONSTRAINT(约束语句)5.ALTERTABLE(修改表)6.DROPTABLE(删除表)CREATETABLE语句:在数据库中生成新表,表中字段的类型町以为:INTEGER(整型)、LONG(长整型)、SINGLE(单精度浮点数)、DOUBLE(双精度浮点数)、DATETIME(日期型,也可以写成DATE)、BIT(布尔型)、TEXT(字符串型,最人255个字节)>MEMO(字符串型,最人可达1.2G字节)、COUNTER(口动递增长整型,可确定记录的唯一性)、CURRENCY(货币型
3、,精确到小数点左边15位,右边4位)、BINARY(字节型,最大255个)、LONGBINARY(用于OLE对象)、GU1D(全局唯一标识符)。生成表NewTable,该表有文本字段Fieldl和整型字段Field2,表名和字段名町以随便你取,不区分大小写,但是,有些保留字不能用作表名字段名,比如NumberCREATETABLENewTable(FieldlTEXT(30),Field2INTEGER);CREATEINDEX语句:INDEX是为了加快查找记录的速度,或者是为了增加字段约束关系而设置的。创建索引语句执行前表屮可以有记录,但存在的记录必须满足该索引语句的约束关系,否则语句不能执
4、行,另外要注意的是在同一个数据库屮(而不仅仅是在同一个表屮),索引名不能相同,否则语句也会失败。生成字段Fieldl的索引字段Newlndex,两条语句作用相同生成示Fieldl字段可以有相同的值,可以有空值(NULL)CREATEINDEXNcwlndoxONNewTable(Fieldl);CREATEINDEXNcwlndoxONNewTable(Fieldl)WITHIGNORENULL;生成字段Fieldl的索引字段Newlndex,注意,每个表里只能有一个主索引(PRIMARY)o生成后Fieldl字段不能有相同的值,不能有空值(当然,如果是TEXT类型,可以有一个空串,但是空串不
5、是空值)CREATEINDEXNowlndoxONNewTable(Fieldl)WITHPRIMARY;字段Fieldl不能有和同的值,但可以有空值(两个空值不算相同的值)CREATEUNIQUEINDEXNewlndexONNewTable(Fieldl);字段Fieldl可以有和同的值,但不能有空值CREATEINDEXNowlndoxONNewTable(Field2)WITHDISALLOWNULL可以在索引语句屮加入ASC(升序)或DESC(降序)来控制记录排列顺序如果不使用顺序字,SQL则默认使用ASC顺序CREATEINDEXNowlndoxONNewTable(FieldlA
6、SC,Field2DESC);DROPINDEX语句:删除表NewTable中的索引Nowlndox,语句执行I询索引Nowlndox必须存在DROPINDEXNewlndexONNewTable;CONSTRAINT语句:CONSTRAINT了句用于创建数据库完整性的索引,它和INDEX语句作用一样,有些地方可以互相替代,它可以使用PRIMARYKEY(主关键字),UNIQUE(唯一)和FOREIGNKEY(外部关键字),和INDEX相比不能使用IGNORNULL和DISALLOWNULL,但多了FOREIGNKEY(这也是它最强人的地方)。另外,CONSTRAINT语句必须和CREATET
7、ABLE或ALTERTABLE语句一起使用。生成表NewTable,主关键字段是Fieldl,主索引是NewPKCREATETABLENewTable(FieldlLONGCONSTRAINTNewPKPRIMARYKEY,Field2MEMO,Field3DATETIME);生成索引为NewUK的表NewTable,Fieldl不能有相同值,可以有空值CREATETABLENewTable(Fi