教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

SQL标准语言内容大全(12)

来源:网络收集 时间:2026-07-16
导读: 2、表名和列名规则: ? 必须以字母开头 ? 长度必须是1-30个字符 ? 只能包含A–Z、 a–z、 0–9、 _ $ ,# ? 不能与同一用户拥有的其它对象重名 ? 注:名称不区分大小写。 3、DEFAULT选项 ? 指定插入时的列的默认值。

2、表名和列名规则:

? 必须以字母开头 ? 长度必须是1-30个字符

? 只能包含A–Z、 a–z、 0–9、 _ $ ,# ? 不能与同一用户拥有的其它对象重名 ? 注:名称不区分大小写。

3、DEFAULT选项

? 指定插入时的列的默认值。

? 文字值、表达式或SQL函数都是合法值。 ? 其它列的名称或伪列是不合法的值。 ? 默认数据类型必须与列数据类型匹配。

演示 - 创建表

1. 创建表hr.DEPT表:DEPTNO、DNAME和LOC。

演示 - 创建表可选择字段类型

1. VARCHAR、VARCHAR2、NVARCHAR、NVARCHAR2:可变长度字符数据 2. CHAR、NCHAR:固定长度字符数据

3. NUMBER(p,s)、DECIMAL(p,s):可变长度数字数据。p为精度(是指十进制

数字的总数),小数位为s的数(指小数点右边的数字的位数) 4. DATE:日期值

5. TIMESTAMP:是DATE类型的扩展,可以存储年、月和日,小时、分钟及秒值。 6. BLOB:二进制数据

7. CLOB:字符数据最多为2千兆

练习 - 创建学生表

1. 创建一张学生表:hr.student,要求包括学生的学号、姓名、年龄、出生日期、性别、

身份证号、联系电话、住址。(提示:每个字段的长度可自定)

2. 创建完成后查看表结构(H2的语法:show columns from hr.student;)

10-2子查询创建表

?

通过组合CREATE TABLE和AS subquery选项可以创建表并插入行。

CREATE TABLE table [(column, column...)] AS subquery; ?

使指定列的数量与子查询列数匹配。

? ? 定义具有列名和默认值的列 规则:

? 可在创建表时指定具体的列名,子查询的结果将插入到该表中。 ? 列定义只能包含列名和默认值

? 如果已经给出列的规格,则列数必须等于子查询SELECT列表中的列数 ? 如果没有给出列的规格,则表的列名称将和子查询的列名相同。 ? 完整性的规则不会传递到新表中,只有列数据类型定义会被传递。

演示 - 子查询创建表

1. 用子查询创建名为DEPT80的表,该表包含部门80中的所有员工的详细资料。

练习 - 子查询创建表

1. 创建新表hr.emp2,该表的结构与hr.employees相同,但是不需要插入hr.employees

的行数据。

练习 - 子查询创建表

1. 创建表hr.dept,该表包含两列分别为id,name。

2. 通过子查询查询表hr.departments,只要DEPARTMENT_ID,DEPARTMENT_NAME这

两列的类型及行数据并插入到hr.dept。

10-3 ALTER TABLE

1、使用ALTER TABLE可以完成以下任务:

? 添加新列 ? 修改现有列 ? 为新列定义默认值 ? 删除列

2、语法

ALTER TABLE table

ADD (column datatype [DEFAULT expr] [, column datatype]...); H2语法:

ALTER TABLE table ALTER COLUMN columnName (column datatype [DEFAULT expr]

[, column datatype]...); Oracle语法:

ALTER TABLE table

MODIFY (column datatype [DEFAULT expr] [, column datatype]...); ALTER TABLE table DROP (column);

演示 - 添加新列

1. 向表hr.dept80添加新列job_id,添加的新列将成为表的最后一行。

演示 - 修改列

1. 可以修改列的数据类型、大小和默认值。 2. 3. 4. 5.

对默认值的更改只影响以后对表的插入操作。 可以增大数字列或字符列的精度或宽度。

只有在列仅包含空值或表没有行时,才可以减少列的宽度。 只有在列包含空值时,才可以更改数据类型。

演示 - 删除列

1. 使用DROP COLUMN子句可以从表中删除不再需要的列。 2. 规则:

? ? ? ?

要删除的列可以包含数据,也可以不包含数据。 使用Alter Table语句时,每次只能删除一列。 表在更改之后,必须至少余下一列。 列一旦被删除,就无法恢复。

练习 - 列操作

1. 创建表hr.dept80.

2. 给表hr.dept80新增一列department_id number(4)。 3. 修改表hr.dept80的department_id列的宽度为6。 4. 删除表hr.dept80的department_id列。 创建表hr.dept80的代码: …… 此处隐藏:211字,全部文档内容请下载后查看。喜欢就下载吧 ……

SQL标准语言内容大全(12).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/520304.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)