资源描述:
《数据库SQL语句宝典》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、SQL语句数据库设计本章重点内容:1:使用SQL语句创建和删除数据库、表以及约束。2:学会使用SQLServer文档回顾第一学期T-SQL语句的数据操作语法1.添加数据语法:INSERT[INTO]表名(列1,列2,······)VALUES(值1,值2······)例如:INSERTINTOStudent(StuName,StuNo,BornDate)VALUES(‘张三’,’1000’,’1990-2-9’)2.修改数据语法:UPDATE表名SET列1=值1,列2=值2,······WHERE(
2、条件)例如:UPDATEStudentSETBornDate=‘1991-2-28’WHEREStudentName=‘张三’回顾第一学期T-SQL语句的数据操作语法3.查询数据语法:SELECT列1,列2,······FROM表名WHERE(条件)ORDERBY列名例如:SELECTStuName,StuNoFROMStudentWHEREBornDate>=‘1990-1-1’ORDERBYStuNo4.删除数据语法:DELETEFROM表名WHERE(条件)例如:DELETEFROMStude
3、ntWHEREBornDate<‘1990-1-1’知识点一:使用SQL语句创建和删除数据库回顾数据库文件由以下三部分组成:1:主数据文件:.mdf。2:次要数据文件:.ndf。3:日志文件:.ldf。每个数据库至少要包含两个文件:一个数据文件和一个日志文件。数据文件中包含了数据库的数据和对象,如表、视图和索引等,日志文件中包含有用于恢复数据库所需的信息。创建数据库时,次要数据文件可选。一个数据库可以有多个数据库文件和多个日志文件。知识点一:使用SQL语句创建和删除数据库创建数据库语法:CREATE
4、DATABASE数据库名ON[PRIMARY](<数据文件参数>[,······n][<文件组参数>])[LOGON]({<日志文件参数>[,······n]})知识点一:使用SQL语句创建和删除数据库示例--sysdatabases存储在Master数据库中--创建数据库CREATEDATABASEMySchoolON(--主数据文件NAME='MySchool',FILENAME='D:appleMySchool.mdf',SIZE=5MB,MAXSIZE=100MB,FILEGROWTH=
5、10%)LOGON(--日志文件NAME='MySchool_log',FILENAME='D:appleMySchool_log.ldf',SIZE=3MB,MAXSIZE=20MB,FILEGROWTH=10%)知识点一:使用SQL语句创建和删除数据库删除数据库如果SQLServer中已存在MySchool数据库,再次运行示例中的创建数据库的语句,就会发现系统提示错误:该数据库已存在,创建失败。SQLServer将数据库的清单存放在master系统数据库的sysdatabases表中,只需要
6、借组SELECT语句查看sysdatabases表中是否存在数据库MySchool的记录就可以了。知识点一:使用SQL语句创建和删除数据库删除数据库所以,示例1完整的T-SQL语句即如下所示。USEmasterGOIFEXISTS(SELECT*FROMsysdatabasesWHEREname=‘MySchool’)DROPDATABASEMySchoolCREATEDATABASEMySchoolON(······)LOGON(······)GOEXISTS(查询语句)检测某个查询是否存在。如果
7、查询语句返回的记录结果不为空,则表示存在;否则表示不存在。知识点二:使用SQL语句创建和删除表创建表语法:CREATETABLE表名(列1数据类型列的特征,列2数据类型列的特征,······)其中,“列的特征”包括该列是否为空(NULL),是否是标识列(自动编号),是否有默认值以及是否为主键等。考虑各种开发语言的兼容性,表中各列名称推荐使用英文缩写。知识点二:使用SQL语句创建和删除表示例CREATETABLEstuMarks(marksIdINTPRIMARYKEYIDENTITY(1,1)NOT
8、NULL,mathScoreINTNOTNULL,chineseScoreINTNOTNULL,[sId]INTNOTNULL)同创建数据库一样,如果当前数据库中已存在stuMarks表,再次创建时系统将提示错误。我们需要预先检测当前数据库中是否存在该表,如果存在,则先删除,然后,再创建。删除表的语法如下:DROPTABLE表名例如:DROPTABLEstuMarks知识点三:使用SQL语句创建和删除约束添加约束在创建表时,我们可以在列后添加各种约束,但一般不这样混合