数据库SQL语句宝典.ppt
《数据库SQL语句宝典.ppt》由会员分享,可在线阅读,更多相关《数据库SQL语句宝典.ppt(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、SQL 语句句数据数据库设计本章重点内容:本章重点内容:1:使用:使用SQL语句创建和删除数据库、表以及约束。语句创建和删除数据库、表以及约束。2:学会使用:学会使用SQL Server文档文档回顾回顾第一学期第一学期T-SQL语句的数据操作语法语句的数据操作语法 1.添加数据添加数据 语法:语法:INSERT INTO 表名(列表名(列1,列,列2,)VALUES(值值1,值,值2)例如:例如:INSERT INTO Student(StuName,StuNo,BornDate)VALUES(张三张三,1000,1990-2-9)2.修改数据修改数据 语法:语法:UPDATE 表名表名 SE
2、T 列列1=值值1,列,列2=值值2,WHERE(条件条件)例如:例如:UPDATE Student SET BornDate=1991-2-28 WHERE StudentName=张张三三回顾回顾第一学期第一学期T-SQL语句的数据操作语法语句的数据操作语法 3.查询数据查询数据 语法:语法:SELECT 列列1,列列2,FROM 表名表名 WHERE(条件条件)ORDER BY 列名列名 例如:例如:SELECT StuName,StuNo FROM Student WHERE BornDate=1990-1-1 ORDER BY StuNo 4.删除数据删除数据 语法:语法:DELET
3、E FROM 表名表名 WHERE(条件条件)例如:例如:DELETE FROM Student WHERE BornDate 1990-1-1知识点一:知识点一:使用使用SQL语句创建和删除数据库语句创建和删除数据库回顾回顾 数据库文件由以下三部分组成:数据库文件由以下三部分组成:1:主数据文件:主数据文件:.mdf。2:次要数据文件:次要数据文件:.ndf。3:日志文件:日志文件:.ldf。每个数据库至少要包含两个文件:一个数据文件和一个日志文件。每个数据库至少要包含两个文件:一个数据文件和一个日志文件。数据文件中包含了数据库的数据和对象,如表、视图和索引等,日数据文件中包含了数据库的数据
4、和对象,如表、视图和索引等,日志文件中包含有用于恢复数据库所需的信息。创建数据库时,次要志文件中包含有用于恢复数据库所需的信息。创建数据库时,次要数据文件可选。一个数据库可以有多个数据库文件和多个日志文件。数据文件可选。一个数据库可以有多个数据库文件和多个日志文件。知识点一:知识点一:使用使用SQL语句创建和删除数据库语句创建和删除数据库创建数据库创建数据库 语法:语法:CREATE DATABASE 数据库名数据库名 ON PRIMARY (,n )LOG ON (,n )知识点一:知识点一:使用使用SQL语句创建和删除数据库语句创建和删除数据库示例示例-sysdatabases存储在存储在
5、Master数据库中数据库中-创建数据库创建数据库 CREATE DATABASE MySchool ON (-主数据文件主数据文件NAME=MySchool,FILENAME=D:appleMySchool.mdf,SIZE=5MB,MAXSIZE=100MB,FILEGROWTH=10%)LOG ON (-日志文件日志文件NAME=MySchool_log,FILENAME=D:appleMySchool_log.ldf,SIZE=3MB,MAXSIZE=20MB,FILEGROWTH=10%)知识点一:知识点一:使用使用SQL语句创建和删除数据库语句创建和删除数据库删除数据库删除数据库
6、如果如果SQL Server中已存在中已存在MySchool数据库,再次运行示例中的创建数据数据库,再次运行示例中的创建数据库的语句,就会发现系统提示错误:该数据库已存在,创建失败。库的语句,就会发现系统提示错误:该数据库已存在,创建失败。SQL Server 将数据库的清单存放在将数据库的清单存放在master系统数据库的系统数据库的sysdatabases表中,表中,只需要借组只需要借组SELECT语句查看语句查看sysdatabases表中是否存在数据库表中是否存在数据库MySchool的记录就可以了。的记录就可以了。知识点一:知识点一:使用使用SQL语句创建和删除数据库语句创建和删除数
7、据库删除数据库删除数据库 所以,示例所以,示例1完整的完整的T-SQL语句即如下所示。语句即如下所示。USE master GO IF EXISTS(SELECT*FROM sysdatabases WHERE name=MySchool)DROP DATABASE MySchool CREATE DATABASE MySchool ON()LOG ON ()GO EXISTS(查询语句查询语句)检测某个查询是否存在。如果查询语句返回的记录结果不为空,检测某个查询是否存在。如果查询语句返回的记录结果不为空,则表示存在;否则表示不存在。则表示存在;否则表示不存在。知识点二:知识点二:使用使用SQ
8、L语句创建和删除表语句创建和删除表创建表创建表 语法:语法:CREATE TABLE 表名表名 (列列1 数据类型数据类型 列的特征列的特征,列列2 数据类型数据类型 列的特征列的特征,)其中,其中,“列的特征列的特征”包括该列是否为空(包括该列是否为空(NULL),是否是标识),是否是标识列(自动编号),是否有默认值以及是否为主键等。列(自动编号),是否有默认值以及是否为主键等。考虑各种开发语言的兼容性,表中各列名称推荐使用英文缩写。考虑各种开发语言的兼容性,表中各列名称推荐使用英文缩写。知识点二:知识点二:使用使用SQL语句创建和删除表语句创建和删除表示例示例 CREATE TABLE s
9、tuMarks (marksId INT PRIMARY KEY IDENTITY(1,1)NOT NULL,mathScore INT NOT NULL,chineseScore INT NOT NULL,sId INT NOT NULL )同创建数据库一样,如果当前数据库中已存在同创建数据库一样,如果当前数据库中已存在stuMarks表,再次创建时系表,再次创建时系统将提示错误。我们需要预先检测当前数据库中是否存在该表,如果存在,统将提示错误。我们需要预先检测当前数据库中是否存在该表,如果存在,则先删除,然后,再创建。则先删除,然后,再创建。删除表的语法如下:删除表的语法如下:DROP T
10、ABLE 表名表名 例如:例如:DROP TABLE stuMarks 知识点三:知识点三:使用使用SQL语句创建和删除约束语句创建和删除约束添加约束添加约束 在创建表时,我们可以在列后添加各种约束,但一般不这样混合使在创建表时,我们可以在列后添加各种约束,但一般不这样混合使用,推荐将添加约束和创建表的语句分开编写。用,推荐将添加约束和创建表的语句分开编写。添加约束的语法如下。添加约束的语法如下。语法:语法:ALTER TABLE 表名表名 ADD CONSTRAINT 约束名约束名 约束类型约束类型 具体的约束说明具体的约束说明 知识点三:知识点三:使用使用SQL语句创建和删除约束语句创建和
11、删除约束示例示例 -创建主键约束创建主键约束 ALTER TABLE student ADD CONSTRAINT PK_stuID PRIMARY KEY(stuID)-添加唯一约束。特点:不允许相同,但允许有一个空值添加唯一约束。特点:不允许相同,但允许有一个空值 ALTER TABLE student ADD CONSTRAINT UQ_stuCardNo UNIQUE(stuCardNo)-添加默认约束添加默认约束 ALTER TABLE student ADD CONSTRAINT DF_stuAddress DEFAULT(北京海淀中关村北京海淀中关村)FOR stuAddress
12、 -添加检查约束添加检查约束 ALTER TABLE student ADD CONSTRAINT CK_stuSex CHECK(stuSex=男男 OR stuSex=女女)-添加主外键关系添加主外键关系FOREIGN KEY(stuID)中的中的stuID是子表中的是子表中的stuID -添加主外键的步骤:添加主外键的步骤:-1、确定谁是主表、子表、确定谁是主表、子表 -2、在子表当中添加一个字段,用来跟主表中的主键建立关系、在子表当中添加一个字段,用来跟主表中的主键建立关系 ALTER TABLE stuMarks ADD CONSTRAINT FK_Id FOREIGN KEY(sI
13、d)REFERENCES student(stuID)知识点三:知识点三:使用使用SQL语句创建和删除约束语句创建和删除约束删除约束删除约束 如果错误地添加了约束,则可以删除约束。如果错误地添加了约束,则可以删除约束。删除约束的语法如下:删除约束的语法如下:语法:语法:ALTER TABLE 表名表名 DROP CONSTRAINT 约束名约束名 例如,删除例如,删除Student表中地址列默认约束的语句如下。表中地址列默认约束的语句如下。ALTER TABLE Student DROP CONSTRAINT DF_stuAddress 知识点二:知识点二:使用使用SQL Server 文档文
14、档如何查看如何查看SQL Server F1第二章总结第二章总结 1:数据库的物理实现一般步骤如下。:数据库的物理实现一般步骤如下。(1)创建数据库。)创建数据库。(2)创建表。)创建表。(3)添加各种约束。)添加各种约束。(4)创建数据库的登录账户并授权。)创建数据库的登录账户并授权。2:创建数据库或表时一般需要预先检测是否存在该对象,:创建数据库或表时一般需要预先检测是否存在该对象,SQL Server中的哪些数据库可以从中的哪些数据库可以从master系统数据库的系统数据库的sysdatabases表中查询,而一个数据库中的哪些表可以从该数据库的表中查询,而一个数据库中的哪些表可以从该数
15、据库的 系系统表统表sysobjects中查询。中查询。3:使用:使用CREATE DATABASE语句可以创建数据库,使用语句可以创建数据库,使用DROP DATABASE语句可以删除数据库。语句可以删除数据库。4:使用:使用CREATE TABLE语句可以创建数据库的表结构,使用语句可以创建数据库的表结构,使用DROP TABLE语句可以删除表结构。语句可以删除表结构。5:使用:使用ALTER TABLE 语句可以创建以下约束。语句可以创建以下约束。(1)主键约束()主键约束(Primary Key Constraint)。)。(2)唯一约束()唯一约束(Unique Constraint
16、)。)。(3)检查约束()检查约束(Check Constraint)。)。(4)默认约束()默认约束(Default Constraint)。)。(5)外键约束()外键约束(Foreign Key Constraint)。)。第三章目标第三章目标本章重点内容:本章重点内容:1:T-SQL中变量的声明与赋值中变量的声明与赋值2:PRINT、SELECT输出语句输出语句3:逻辑控制语句和批处理指令:逻辑控制语句和批处理指令知识点一:使用变量知识点一:使用变量T-SQL中的变量分为局部变量和全局变量。局部变量的使用也是先声中的变量分为局部变量和全局变量。局部变量的使用也是先声明,再赋值。而全局变量
17、由系统定义和维护,我们可以直接使用,明,再赋值。而全局变量由系统定义和维护,我们可以直接使用,但一般不自定义全局变量。但一般不自定义全局变量。一:局部变量一:局部变量 T-SQL中,局部变量的名称必须以标记中,局部变量的名称必须以标记作为前缀。语法如下:作为前缀。语法如下:DECLARE 局部变量名称局部变量名称 数据类型数据类型 例如:例如:DECLARE name VARCHAR(8)DECLARE number INT 知识点一:使用变量知识点一:使用变量T-SQL语言中,为局部变量赋值语句有语言中,为局部变量赋值语句有SET语句和语句和SELECT语句。其语句。其中:中:1:SET赋值
18、语句一般用于赋给变量指定的数据常量赋值语句一般用于赋给变量指定的数据常量 2:SELECT赋值语句一般用于从表中查询数据,然后再赋给变量。赋值语句一般用于从表中查询数据,然后再赋给变量。SELECT语句需要确保筛选的记录不多于一条,如果查询的记录语句需要确保筛选的记录不多于一条,如果查询的记录 多于一条,将把最后一条记录的值赋给变量。多于一条,将把最后一条记录的值赋给变量。SET语句与语句与SELECT的区别的区别 1:SELECT支持同时对多个变量赋值,而支持同时对多个变量赋值,而SET语句不语句不支持。支持。2:表达式返回多个值时,:表达式返回多个值时,SET将出错,而将出错,而SELEC
19、T将将返回的最后一个值赋给变量。返回的最后一个值赋给变量。3:表达式未返回值时,:表达式未返回值时,SET语句变量被赋语句变量被赋NULL值,值,SELECT语句变量保持原值。语句变量保持原值。知识点一:使用变量知识点一:使用变量二:全局变量二:全局变量 SQL Server中的所有全局变量都使用两个中的所有全局变量都使用两个标志作为前缀。标志作为前缀。常用的全局变量如下所示:常用的全局变量如下所示:1:ERROR 最后一个最后一个T-SQL错误的错误号错误的错误号 2:IDENTITY 最后一次插入的标识值最后一次插入的标识值 3:LANGUAGE 当前使用的语言的名称当前使用的语言的名称
20、4:MAX_CONNECTIONS 可以创建的同时连接的最大数目可以创建的同时连接的最大数目 5:ROWCOUNT 受上一个受上一个SQL语句影响的行数语句影响的行数 6:SERVERNAME 本地服务器的名称本地服务器的名称 7:SERVICENAME 该计算机上的该计算机上的SQL服务的名称服务的名称 8:TIMETICKS 当前计算机上每刻度的微妙数当前计算机上每刻度的微妙数 9:TRANSCOUNT 当前连接打开的事务数当前连接打开的事务数 10:VERSION SQL Server的版本信息的版本信息 知识点二:输出语句知识点二:输出语句T-SQL中支持输出语句,用于输出显示处理的数
21、据结果。中支持输出语句,用于输出显示处理的数据结果。常用的输出语句有两种,它们的语法分别如下:常用的输出语句有两种,它们的语法分别如下:语法:语法:1:PRINT 局部变量或字符串局部变量或字符串 2:SELECT 局部变量局部变量 AS 自定义列名自定义列名 与与C#语言类似,语言类似,T-SQL语言中,数据类型的转换也分为隐式转换语言中,数据类型的转换也分为隐式转换和显式转换。在和显式转换。在T-SQL语言中除了我们在第一学期中学习的语言中除了我们在第一学期中学习的CONVERT()函数能够实现数据类型显式转换功能之外,函数能够实现数据类型显式转换功能之外,T-SQL还提供了还提供了CAS
22、T()函数。函数。语法:语法:CAST(表达式表达式 AS 数据类型数据类型)CONVERT(数据类型数据类型(长度长度),长度长度,样式样式)CAST()函数用于将某种数据类型的表达式显式转换为另一种数据函数用于将某种数据类型的表达式显式转换为另一种数据类型。类型。CONVERT()函数的功能是将某种数据类型的表达式显式转函数的功能是将某种数据类型的表达式显式转换为另一种数据类型,第三个参数只限于对日期格式的转换。换为另一种数据类型,第三个参数只限于对日期格式的转换。知识点三:逻辑控制语句知识点三:逻辑控制语句在在T-SQL语言中,常用的逻辑控制语句有以下几种。语言中,常用的逻辑控制语句有以
23、下几种。1:顺序机构控制语句:顺序机构控制语句:BEGIN-END语句语句2:分支结构控制语句:分支结构控制语句:IF-ELSE语句和语句和CASE-END语句语句3:循环结构控制语句:循环结构控制语句:WHILE语句语句一:一:BEGIN-END语句语句 语法:语法:BEGIN 语句或语句块语句或语句块 END BEGIN-END语句的作用类似于语句的作用类似于C#语言的语言的“”符号,符号,它经常在分支结构语句和循环语句中出现,表示语句块它经常在分支结构语句和循环语句中出现,表示语句块的开始和结束。在一个语句块中可以包含另一个语句块的开始和结束。在一个语句块中可以包含另一个语句块知识点三:
24、逻辑控制语句知识点三:逻辑控制语句二:二:IF-ELSE条件语句条件语句 IF-ELSE语句属于分支结构,它与语句属于分支结构,它与C#编程语言的编程语言的IF语句语句类似,也是根据条件是否成立来确定程序的执行方向。类似,也是根据条件是否成立来确定程序的执行方向。语法:语法:IF(条件条件)语句或语句块语句或语句块1 ELSE 语句或语句块语句或语句块2 当当IF语句中的条件表达式为语句中的条件表达式为true时,执行语句或语句块时,执行语句或语句块1的代码;否则执行语句或语句块的代码;否则执行语句或语句块2.同同C#语言类似,语言类似,ELSE为可选。为可选。知识点三:逻辑控制语句知识点三:
25、逻辑控制语句三:三:WHILE循环语句循环语句 WHILE循环语句可以根据某些条件重复执行一条循环语句可以根据某些条件重复执行一条SQL语句或一个语句块。通过使用语句或一个语句块。通过使用WHILE关键字,可以确保关键字,可以确保只要指定的条件为只要指定的条件为true,就会重复执行语句,直至指定,就会重复执行语句,直至指定条件为条件为false为止。为止。语法:语法:WHILE(条件条件)BEGIN 语句或语句快语句或语句快 BREAK|CONTINUE END 知识点三:逻辑控制语句知识点三:逻辑控制语句四:四:CASE多分支语句多分支语句 CASE-END语句计算一组条件表达式,并返回其
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 SQL 语句 宝典
限制150内