创建与管理表
数据库中对象:有表、视图、索引、序列、同义词等。
表:基本的数据存储的集合,由行与列组成
视图:从表中抽出的逻辑上相关的数据集合。
序列: 提供有规律的数值
索引:提高查询效率
同义词:给对象起的别名。
Oracle数据库中的表
1、 用户自定义表
表名和列名的命名规范:
l 必须以字母开头
l 必须在 1–30 个字符之间
l 必须只能包含 A–Z, a–z, 0–9, _, $, 和 #
l 必须不能和用户定义的其他对象重名
l 必须不能是Oracle 的保留字
l Oracle默认存储是都存为大写
l 数据库名只能是1~8位,datalink可以是128 位 ,和其他一些特殊字符
创建表必须具备:
l 必须具备:
• CREATE TABLE权限
• 存储空间
l 必须指定:
• 表名
• 列名, 数据类型, 尺寸
创建表的语法
CREATE TABLE [schema.]table
(column datatype [DEFAULT expr][, ...]);
举例:
Creat table demo(name char(15) default ‘redarmy’);
Insert into demo values(‘hehe’);
Select * from demo;
查询其他用户表
//控制权限
Grant 方法
Grand select on demo to hr;
Select * from scott.demo;
Default值:
1. 执行insert操作时,可以为其指定默认值
2. 值、表达式和sql语句都可以是默认值
3. 其他的列名或者是伪劣都是非法的
4. 默认值的类型必须和该列的类型一致
//追加一列
Alter table demo add (id number(8));//DDL语句 不需要提交,会自动提交
Insert into demo(id) values (12);
//修改一个列:对默认值的修改只影响今后对表的修改
Alter table demo modify(name varcher(23));
//删除列
Alert table demo drop column id;
//删除表 :自动提交 数据和结构都被删除,所有相关索引被删除 语句不能回滚
Drop table demo;
//重命名:必须是对象的拥有者
Rename demo to demo8;
//清空表 自动提交
Truncate table Demo8;