SQL练习1-CREAT/DROP/ALTER SQL与T-SQL之间的不同:

南笙酒味 提交于 2020-03-08 09:52:58

练习主要内容:
数据库系统概论(第五版)例3.1-例3.12
在进行练习之前先【新建查询】
在这里插入图片描述
【新建查询】以后输入命令【CREATE DATABASE SCHOOL】再点击【分析】(工具栏的对勾)【执行】,刷新以后可以看见创建的数据库 SCHOOL
接着【创建对象】WANG
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
按照上面的图片所示,即可创建用户
接着需要修改【可执行数据库】,将数据库改成刚刚创建的SCHOOL
在这里插入图片描述
然后我们就可以开始进行练习:
模式的定义和删除
在SQL中,模式定义句:
CREATE SCHEMA<模式名>AUTHORIZATION <用户名>
如果没有指定<模式名>,那么<模式名>隐含为<用户名>
【例3.1】
为用户WANG定义一个学生-课程模式S-T
CREATE SCHEMA"S-T" AUTHORIZATION WANG;
在这里插入图片描述
【例3.2】
CREATE SCHEMA AUTHORIZATION WANG;
在这里插入图片描述
SQL server中。默认的用户dbo,在没有创建模式的情况下,默认的模式名为dbo,所以表名为dbo.*。
【例3.3】
为用户WANG 创建TEST,并且在其中定义TAB1.
CREATE SCHEMA TEST AUTHORIZATION WANG
CREATE TABLE TAB1(
COL1 SMALLINT,
COL2 INT,
COL3 CHAR(20),
COL4 NUMERIC(10,3),
COL5 DECIMAL(5,2)
);
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
其中应该注意,如果未说明名字,那么系统就默认名字为dbo
【例3.4】
删除模式WANG,同时,删除该模式中已经定义的表也被删除
删除语法:DROP SCHEMA<模式名><CASCADE|RESTRICT>
基本表的定义,删除和修改
【例3.5】
定义基本表:
CREATE TABLE<表名>(<列名><数据类型>[列级完整约束条件],
<列名><数据类型>[列级完整约束条件]);
建立一个“学生”表Student
在这里插入图片描述
在这里插入图片描述
【例3.6】
建立一个“课程”表Course
在这里插入图片描述
在这里插入图片描述
【例3.7】建立学生选课表SC
在这里插入图片描述
在这里插入图片描述
【例3.8】
向Student表增加“入学时间”列,其数据类型为日期型
在这里插入图片描述
在这里插入图片描述
【例3.9】
将年龄的数据类型由字符型(假设原来的数据类型师字符型)改为整数
在这里插入图片描述
【例3.10】
增加课程名称必须唯一的约束条件
在这里插入图片描述
【例3.11】
删除Student表
在这里插入图片描述
如果此时按照课本输入语句,那么会进行保错,这是因为SQL Server不支持在删除表(TABLE)的过程中使用CASCADE关键字。
【例3.12】
在这里插入图片描述
在这里插入图片描述
这里报错原因是因为SQL Server不能用RESRICT关键字进行表的删除
如果在SQL Server中要对表进行删除,那么就可以直接使用DROP<表名>

SQL与T-SQL之间的不同:
SQL是结构化查询语言,是关系数据库的标准语言,是一个通用的关系数据库语言,目前没有一个数据库系统可以支持标准SQL的全部概念和特性
T-SQL是SQL的扩展语言,只能在SQL Server使用,在SQL的基础上还加入了某些程序语言语法,例如if,while

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!