如何轻松在SQL中创建表_第1页
如何轻松在SQL中创建表_第2页
如何轻松在SQL中创建表_第3页
如何轻松在SQL中创建表_第4页
如何轻松在SQL中创建表_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据表的基本概念数据表就是相关联的行列数据集合。1.字段数据表中的一列称为一个字段。每个字段的标题名称称为列名或字段名,一个数据表中的字段名必须是唯一的。一个字段中存放同一类型的数据,不同字段存放的数据类型可以不同。一个字段中所存放的数据类型、数值大小及字段长度成为该字段属性。2.记录数据表中的一行成为一个记录。每个表都有一个主键,主键字段的数据可以唯一标识表中的一条记录。设置了主键的数据表中,各条记录是唯一的。3.用T-SQL语句创建数据表及约束对象3.1用CreateTable语句创建表的结构语法格式:Createtable表名(

列名1列属性

, 列名2列属性,

……

列名n列属性

)注意:列的定义必须放在圆括号中。语法中参数顺序不能改动。最多可以设置1024个字段列属性:如数据类型、null、默认值等例:建立一个“student”表CREATETABLEStudent ( fCode varchar(9)NOTNULL, fName varchar(10)NOTNULL, fSex char(2)NOTNULL, fClass varchar(4)NOTNULL, fBirthdaydatetime )1.字段属性定义格式:数据类型[(长度)][identity(初始值,步长值)][null|notnull]默认长度的数据类型“(长度)”不允许指定;需要指定长度时圆括号不能省略identity用于指定该列为自动编号字段(标识列)null|notnull用于指定该列允许空值(默认)或不允许空值2.字段约束定义格式:[constraint约束名]primarykey[(主键列名)][constraint约束名]unique[(惟一列名)][constraint约束名][foreignkey(外键列名)]

references引用表名(引用列名)[constraint约束名]check(检查表达式)[constraint约束名]default

默认值1.约束名为以后修改管理时使用,省略为系统默认的约束名。2.字段约束也可以在创建表结构以后另外单独设置3.定义字段同时定义所绑定的约束时,可以省略列名。3.2用ALTERTABLE语句修改表的结构修改表结构的语句ALTERTABLE的语法格式:ALTERTABLE表名

add列名数据类型[(长度)][null|notnull][default‘默认值’]|altercolumn列名数据类型[(长度)][null|notnull]|dropcolumn字段名[,…n]|addconstraint{约束名约束类型定义}[,…n][for列名]|dropconstraint约束名[,…n]1使用add子句添加列Altertable表名

add列名数据类型[(长度)][null|notnull][default‘默认值’]新增加字段时可以同时设置空值约束、默认值约束若不允许为空时则必须给新增加的列指定默认值,否则语句出现执行错误注意:添加的字段若不允许为空则必须设置默认值,如果不允许为空又不需要设置默认值,可在添加字段时先允许为空,再用altercolumn子句修改为不允许为空,这样就没有默认值了。2、使用altercolumn子句修改字段属性ALTERTABLE表名

altercolumn字段名数据类型[(长度)][null|notnull]将一个原来允许为空值的列设置为不允许为空时,必须保证表中已有记录中该列没有空值,而且该列没创建索引改变数据类型时,如果原来设置了默认值约束,一般应先解除或删除约束后再修改,否则很容易发生错误。例:UsediannaoxsAltertable供货商表altercolumn联系电话char(20)3用addconstraint子句添加列约束ALTERTABLE表名

addconstraint约束名{约束类型及定义[for列名]}[,…n]该语句添加约束必须指定约束名,而且必须是惟一可以用FOR指定列名,若约束类型及定义中已包含了列名,则不允许使用FOR子句如果只允许有一个约束的列已经设置了约束,则原有约束未解除时不能添加新的约束使用一个约束名可以为不同字段添加多个约束设置主键约束:primarykey(列名)

设置惟一约束:unique(列名)

设置外键约束:foreignkey(列名)references主表(列名)

设置检查约束:check(表达式)

设置默认值约束:default默认值5用dropconstraint子句删除列约束

ALTERTABLE表名

dropconstraint约束名[,…n]6用dropcolumn子句删除字段ALTERTABLE表名

dropcolumn字段名[,…n]Altertable供货商表dropcolumn联系电话ALTERTABLE表名{ADD列名列名属性

|DROPCOLUMN列名

|ALTERCOLUMN列名列名属性}Altertablestudent

addfEmailvarchar(30)Altertablestudent

drop

columnfEmailAltertablestudent

altercolumn

fidint添加或删除表的列(3)删除表使用DROPTABLE语句删除表语法:

DROPTABLE表名例如:

删除整个student表

DROPTABLEstudent3.6查看表信息,输入数据,编辑和删除记录3.6.1查看表信息

1.用企业管理器查看表的信息(1)查看表结构(2)查看表约束(3)查看表与表之间的相关性(4)查看其他对象的信息

2.使用T-SQL系统存储过程sp_help语句显示表结构及相关性

[EXECUTE]sp_help[表名]3.使用查询分析器的[对象浏览器]查看表的结构

1.使用insert语句向表中插入记录

Insert[into]表名[(字段列表)]values(值列表)(1)字段列表可以是任意列,但数据的个数、顺序和类型必须保持一致。(2)给表中全部字段提供数据时字段列表可以省略,但此时提供数据的顺序(个数)必须与表中字段顺序一致。(3)自动编号标识列不允许提供数据允许为空的字段不提供数据时必须使用NULL4.6.2向数据表输入数据(4)一个insertvalues语句只能向表中添加一条新记录(5)只给表中部分字段提供数据时,必须指定字段列表,不为空字段不能省略(6)设置了默认值的字段使用默认值时,用default代表默认数据(7)字符型和日期型数据要用单引号扩起来(8)值列表中可以嵌套使用子查询的数据,但必须用圆括号括起来例Insertinto商品表(货号,货名,规格,单位,参考价格)values(‘1003’,‘计算机’,‘FZ’,‘套’,5500)Insertinto商品表values(‘1003’,’计算机’,‘FZ’,‘套’,default,5500,default)2)用insertselect语句向表中添加记录格式:Insert表名1[字段列表1]select*|字段列表2from表名2[where条件表达式]表2的字段列表2中字段个数、顺序和类型(*表示全部字段)必须与表1的字段列表1的个数、顺序和类型相兼容。若给表1中全部字段提供数据,则字段列表1可以省略,但表2的字段列表2不能省略并且其顺序必须与表1字段的定义顺序一致。若给表1中部分字段赋值,字段列表1必须给出要添加数据的列名,但要保证不提供数据的列必须是允许为空的。添加记录例:UsediannaoxsInsert厂家地址表select供货商,厂家地址from供货商表4.6.5数据表数据的更新,编辑修改和删除1使用企业管理器管理修改更新数据2使用update语句修改更新数据格式:Update表名1set{列名=表达式}[,…n][from表名2|表名列表及连接方式][where条件表达式]例:UsediannaoxsUpdate商品表set参考价格=参考价格*0.97where货号=‘1003’3数据表记录的删除格式:Delete表名[from其它表名][where条件表达式]例:deleteaa表whereIsnull1删除数据表格式:Droptalbe表名[,…n]2删除规则格式:Droprule规则名[,…n]3删除默认值格式:Dropdefault默认名称[,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论