SQL从基础到高级

来源:互联网 发布:web聊天室源码 编辑:程序博客网 时间:2024/04/28 16:02
-----------------------------------------下面会继续更新,这些内容都是在SQL2005上正确运行的----------------------------------------------------------先在D盘创建一个“TEST”的文件夹CREATE DATABASE DB1--数据库名称ON --定义数据库的数据文件(NAME = DB1,--逻辑文件名,设置引用时的名称 FILENAME = 'D:\TEST\DB2.MDF'--物理文件名,设置文件在磁盘上的路径和名称)-----------------------------------------------------------------------------先在D盘创建一个TEST的文件夹CREATE DATABASE DB3ON(NAME = DB3,                    --逻辑文件名                FILENAME = 'D:\TEST\DB3.MDF',  --物理文件名 SIZE = 10MB,                   --文件初始大小 MAXSIZE = 100MB,               --文件最大容量FILEGROWTH = 5%                 --文件容量增长幅度)---------------------------------------------------------------------------DROP DATABASE DB3 --删除数据库DB3---------------------------------------------------------------------------CREATE DATABASE DB4ON                                --创建数据库文件(    NAME = DB4,    FILENAME = 'D:\TEST\DB4.MDF',    SIZE = 10MB,    MAXSIZE = 100MB,    FILEGROWTH = 5%)LOG ON                             --创建数据库日志文件  (    NAME = DB4_LOG,    FILENAME = 'D:\TEST\DB4_LOG.LDF')---------------------------------------------------------------------------ALTER DATABASE DB5MODIFY NAME = DB1--修改数据库名称---------------------------------------------------------------------------
ALTER DATABASE DB1ADD FILE  (NAME = DB11, FILENAME = 'D:\TEST\DB11.NDF')--添加数据库文件ALTER DATABASE DB1ADD LOG FILE  (NAME = DB11_LOG, FILENAME = 'D:\TEST\DB11_LOG.LDF') --添加事务日志文件
---------------------------------------------------------------------------ALTER DATABASE DB1ADD FILEGROUP  FD88                            --添加一个文件组,名称为FD88ALTER DATABASE DB1MODIFY FILEGROUP FD88 NAME = FD8               --修改文件组FD88的名称为FD8ALTER DATABASE DB1--在数据库DB1中增加两个数据文件到文件组FD8中,--并将该文件组设为默认文件组    ADD FILE(NAME = DB81, FILENAME = 'D:\TEST\DB81.NDF'),            (NAME = DB82, FILENAME = 'D:\TEST\DB82.NDF')    TO  FILEGROUP FG8    GOALTER DATABASE DB1    MODIFY FILEGROUP FD8 DEFAULT                 --设FD8文件组为默认文件组  ALTER DATABASE DB1    --修改数据库文件DB11的名称为DDD    MODIFY FILE (NAME = DB11, NEWNAME = DDD, FILENAME = 'D:\TEST\DDD.NDF')-----------------------------------------------------------------------------EXEC SP_HELPDB 'DB1'  --指定要查看数据库DB1信息,如不指定,会显示所有数据库的信息EXEC SP_HELPDB        --显示服务器上所有数据库的信息---------------------------------------------------------------------------CREATE DATABASE XSQKON( NAME = XSQK,  FILENAME = 'D:\TEST\XSQK.MDF', SIZE = 10MB,  MAXSIZE = 100MB, FILEGROWTH = 5%)LOG ON( NAME = XSQK_LOG, FILENAME = 'D:\TEST\XSQK_LOG.LDF')-----------------------------------------------------------------------------创建数据库SPJ----------------------------------------------CREATE DATABASE SPJON( NAME = SPJ, FILENAME = 'D:\TEST\SPJ.MDF')LOG ON( NAME = SPJ_LOG, FILENAME = 'D:\TEST\SPJ_LOG.LDF')USE SPJ;--创建s表----------------------------------------------CREATE TABLE S( SNO    CHAR(5)  PRIMARY KEY,  SNAME  CHAR(20),  STATUS INT,  CITY   CHAR(10) DEFAULT '北京');--创建P表----------------------------------------------CREATE TABLE P( PNO    CHAR(5)  PRIMARY KEY,  PNAME  CHAR(20),  COLOR  CHAR(4),  WEIGHT INT);--创建P表----------------------------------------------CREATE TABLE J( JNO   CHAR(5) PRIMARY KEY,  JNAME CHAR(20),  CITY  CHAR(10)DEFAULT '北京');CREATE TABLE SPJ( SNO CHAR(5) FOREIGN KEY REFERENCES S(SNO),  PNO CHAR(5) FOREIGN KEY REFERENCES P(PNO),  JNO CHAR(5) FOREIGN KEY REFERENCES J(JNO),  QTY INT);  --找出上海厂商供应的所有零件的名称及其数量SELECT PNOFROM SPJWHERE SPJ.SNO IN (SELECT SNO                  FROM S                  WHERE CITY = '上海');--找出使用上海产的零件的工程号码SELECT DISTINCT JNOFROM SPJWHERE SPJ.PNO IN (SELECT PNO                  FROM S WHERE CITY = '上海');--找出没有使用天津产的零件的工程号码SELECT DISTINCT JNOFROM SPJWHERE SPJ.PNO NOT IN (    SELECT SNO    FROM S    WHERE CITY = '上海');--把所有的红色零件的颜色改成蓝色UPDATE PSET COLOR = '蓝'WHERE COLOR = '红';--由S5供给J4的零件P6改为由S3供应UPDATE SPJSET SNO = 'S3'WHERE SNO = 'S5' AND PNO = 'P6' AND JNO = 'J4';--从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录DELETE FROM SPJWHERE SNO = 'S2';DELETEFROM SWHERE SNO = 'S2';--先在S表插入S2,否则无法插入行到SPJ中,想想为什么!INSERT INTO S(SNO)VALUES ('S2');INSERT INTO SPJVALUES ('S2', 'P4', 'J6', 200);EXEC SP_HELPDB 'DB1'  --指定要查看数据库DB1信息,如不指定,会显示所有数据库的信息EXEC SP_HELPDB        --显示服务器上所有数据库的信息---------------------------------------------------------------------------CREATE DATABASE XSQKON( NAME = XSQK,  FILENAME = 'D:\TEST\XSQK.MDF', SIZE = 10MB,  MAXSIZE = 100MB, FILEGROWTH = 5%)LOG ON( NAME = XSQK_LOG, FILENAME = 'D:\TEST\XSQK_LOG.LDF')-----------------------------------------------------------------------------创建数据库SPJ----------------------------------------------CREATE DATABASE SPJON( NAME = SPJ, FILENAME = 'D:\TEST\SPJ.MDF')LOG ON( NAME = SPJ_LOG, FILENAME = 'D:\TEST\SPJ_LOG.LDF')USE SPJ;--创建s表----------------------------------------------CREATE TABLE S( SNO    CHAR(5)  PRIMARY KEY,  SNAME  CHAR(20),  STATUS INT,  CITY   CHAR(10) DEFAULT '北京');--创建P表----------------------------------------------CREATE TABLE P( PNO    CHAR(5)  PRIMARY KEY,  PNAME  CHAR(20),  COLOR  CHAR(4),  WEIGHT INT);--创建P表----------------------------------------------CREATE TABLE J( JNO   CHAR(5) PRIMARY KEY,  JNAME CHAR(20),  CITY  CHAR(10)DEFAULT '北京');CREATE TABLE SPJ( SNO CHAR(5) FOREIGN KEY REFERENCES S(SNO),  PNO CHAR(5) FOREIGN KEY REFERENCES P(PNO),  JNO CHAR(5) FOREIGN KEY REFERENCES J(JNO),  QTY INT);  --找出上海厂商供应的所有零件的名称及其数量SELECT PNOFROM SPJWHERE SPJ.SNO IN (SELECT SNO                  FROM S                  WHERE CITY = '上海');--找出使用上海产的零件的工程号码SELECT DISTINCT JNOFROM SPJWHERE SPJ.PNO IN (SELECT PNO                  FROM S WHERE CITY = '上海');--找出没有使用天津产的零件的工程号码SELECT DISTINCT JNOFROM SPJWHERE SPJ.PNO NOT IN (    SELECT SNO    FROM S    WHERE CITY = '上海');--把所有的红色零件的颜色改成蓝色UPDATE PSET COLOR = '蓝'WHERE COLOR = '红';--由S5供给J4的零件P6改为由S3供应UPDATE SPJSET SNO = 'S3'WHERE SNO = 'S5' AND PNO = 'P6' AND JNO = 'J4';--从供应商关系中删除S2的记录,并从供应情况关系中删除相应的记录DELETE FROM SPJWHERE SNO = 'S2';DELETEFROM SWHERE SNO = 'S2';--先在S表插入S2,否则无法插入行到SPJ中,想想为什么!INSERT INTO S(SNO)VALUES ('S2');INSERT INTO SPJVALUES ('S2', 'P4', 'J6', 200);CREATE TABLE Student( Sno char(10) PRIMARY KEY,--学号  Sname char(10) UNIQUE,   --姓名  Ssex char(2),            --性别  Sage INT CHECK(Sage >= 10 AND Sage <= 30),--年龄  Birthday CHAR(10) CHECK(BirthDay LIKE '____-__-__'),--出生日期  Hometown CHAR(10),       --家乡  Enrolldate CHAR(10) CHECK(Enrolldate LIKE '____-__-__'),--入学日期  DormNo INT, --寝室号  BuildingNO INT, --几号楼  Phone CHAR(10), --电话号码  Nationality CHAR(10),--民族 )





原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 校服上衣太大了怎么办 淘宝跨店满减后退货优惠怎么办 牛仔外套短了怎么办 衬衫领子软立不起来怎么办 太多衣服要扔怎么办 旅行衣服皱了怎么办 衣服下摆太宽怎么办 短袖会卷起来怎么办 外出一个月冰箱怎么办 孩子喜欢吸手指怎么办 宝宝吸手指睡觉怎么办 宝宝总是吸手指怎么办 忍不住对孩子发火怎么办 婴儿过早站立了怎么办 连体衣露肚脐怎么办 超短裤太宽怎么办 婴儿的脸睡偏了怎么办 油烟机装高了怎么办 鞋子前面翘起来怎么办 宝宝短袖领子大怎么办 宝宝衣服领口大怎么办 婴儿衣服领口大怎么办 宝宝衣领大了怎么办 小婴儿衣服发黄怎么办 宝宝衣服黄黄的怎么办 放久衣服发黄怎么办 旧婴儿衣服发黄怎么办 产假休完 宝宝怎么办 隐形拉链拉不动怎么办 婴儿低烧不退怎么办 宝宝衣领小了怎么办 宝宝的衣领太大怎么办 半袖买大了怎么办 婴儿上眼睑下垂怎么办 孕妇穿胸罩闷怎么办 婴儿拉肚子怎么办拉水水象蛋花样 婴儿拉肚子怎么办拉水水象蛋花图片 小孩喜欢吃被子怎么办 宝宝喜欢吃被子怎么办 宝宝晚上蹬被子怎么办 武汉飞澳门手续怎么办