资源描述:
《SQL语言是数据库的标准语言》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、SQL语言SQL语言是数据库的标准语言,几乎所有的关系数据库管理系统都支持SQL标准。SQL语言的主要特点是:(1)高度集成化SQL语言集数据定义、数据操作、数据查询和数据控制功能于一体。(2)非过程化SQL是一种非过程化的语言。(3)简洁易学SQL语言完成数据定义(CREATE、DROP、ALTER)数据操纵(INSERT、UPDATE、DELETE)、数据控制(GRANT、REVOKE)和数据查询(SELECT)等核心功能只用了9个命令动词;而且语法也接近英语自然语法。(4)用法灵活SQL语言既能够以人机交互方式来使用,也可以嵌入到程序设计语言中以程序方式使用。5.2表结构
2、及其它属性的定义1、表结构定义的最基本命令格式CREATETABLE(或DBF)表名;(字段名1字段类型(宽度,小数位数),;字段名2字段类型(宽度,小数位数),……..)功能:定义表的字段名、字段类型、宽度、小数位数说明(1)各字段之间用逗号区分,字段名与字段类型之间用一个或多个空格区分(2)C、D、N、I、L、M、G分别代表字符型、日期型、数值型、整型、逻辑型、备注型和通用型。(3)VFP用对话框定义表结构,SQL用命令定义表结构例1:定义学生表结构:学号:C(5),姓名:C(6)性别:L,出生日期:D,语文:N(4,1)CREATEDATABASEY1CREATETABL
3、E学生(学号C(5),姓名C(6),;性别L,出生日期D,语文N(4,1))说明:先用命令建立数据库,然后再定义表结构,输入记录。1、表结构定义的复杂命令格式复杂:即再给字段定义更多的修饰,如:指定主关键字、设置字段的有效性规则、设置提示信息、设置默认值、设置外部关键字并和主表建立联接。(1)PRIMARYKEY(2)CHECK字段有效性规则[ERROR错误信息](3)DEFAULT默认值(4)PRIMARYKEY主关键字tag标识名(5)FOREIGNKEY外部关键字tag标识名;REFERENCES主表名说明:A:(1)、(2)、(3)、(4)、(5)根据题目的要求选择其
4、中的一部分放在字段类型的后面,并且各项之间用一个或一个以上的空格区分。B(4)是定义主表主索引用的,(5)是定义子表索引及和主表建立联接用的。例2:定义一个名为“学生1.DBF”的数据库表:学号C(8)为主关键字,姓名c(8),性别出c(2)性别的默认值为“男”,出生日期d,系别c(10),贷款否L,简历M,照片GNULL。CREATETABLE学生1(学号C(8)PRIMARYkey,姓名;C(8),性别C(2)DEFUALT“男”,出生日期D,系别;C(10),贷款否L,简历M,照片GNULL)说明:对同一个字段修饰的各部分之间用一个以上的空格区分。Createtable课
5、程1(课程号c(3)primarykey,;课程名c(20),学时N(3),学分N(2))Createtable成绩1(学号c(8),课程号c(3),;成绩N(5,1)check(成绩>=0and成绩<=100)error“成绩必须在0到100分之间”,;Foreignkey学号tag学号references学生1,;Foreignkey课程号tag课程号references课程1)5.2.2表结构的修改SQL提供了3种altertable命令格式,分别用来完成对表结构不同方面的修改,如添加字段、修改已有的字段、编辑有效性规则、删除字段等。1、格式1:ALTERTABLE表名1
6、ADD;字段名类型(宽度,小数位数)(1)CHECK字段有效性规则ERROR出错信息(2)default默认值(3)PRIMARYKEY或UNIQUE(4)REFERENCES表名2功能:在表中添加字段,设置字段的类型、宽度、有效性规则、错误提示信息、默认值、定义主键字和联接关系等。但不能修改字段名。一次只能添加一个字段。2、格式2:ALTERTABLE表名1ALTER;字段名类型(宽度,小数位数)(1)CHECK字段有效性规则ERROR出错信息(2)default默认值(3)PRIMARYKEY或UNIQUE(4)REFERENCES表名2功能:修改字段的类型、宽度、有效性规
7、则、错误提示信息、默认值、定义主键字和联接关系等。但不能修改字段名。一次只能修改一个字段。例如:1、在“成绩1”表中添加一个字段:平时成绩N(5)ALTERTABLE成绩1ADD平时成绩N(5)2、将“平时成绩”字段修改为N(5,1),并要求平时成绩不超过100分。ALTERTABLE成绩1ALTER平时成绩N(5,1);check(成绩>=0and成绩<=100)error“0-100”3、将学生1“学号”字段修改为N(3),并和成绩1表相联接。ALTERTABLE学生1ALTER学号N(