一、数据定义语言:定义数据库中数据要如何存储
数据定义语言用于改变数据库结构,包括创建、更改和删除数据库对象
用于操纵表结构的数据定义语言命令有:
create table
alter table
truncate table
drop table
二、在Oracle中命名表和列时的规则:
1、表和列的名称最多可以达到30个字符长。
2、而且必须以一个字母开始,这个限制只适合于表或列的名称,而不适合用于一列中的数据量。
3、表和列名称中允许数字。
4、下划线(_)和数字符号(#),但是不能在表和列名称中包含任何空格。
5、用户拥有的每一个表应该具有一个唯一的表名称,而且每一个表中的列名称也应该是唯一的
6、不能使用Oracle “保留字”,例如:select,distinct,char和number等。
三、
1、创建表create
1.1不依赖于任何表结构
eg:
create table A(
id number,
name varchar2(10),
age number,
dress varchar2(20),
sex varchar2(10)
);
1.2依赖于另一个表结构建表
创建一个包含有表的数据的表A,使用子查询建表
eg:
create table B
as (select name,age,sex from A);
注意点:此时新建的表不仅依赖于原表的结构,也依托于原表的数据,数据会一同被继承,类似于复制粘贴了。
2、修改现有表:
oracle特性:可以修改表而不必关闭数据库,即使用户正在访问这个表。
2.1添加列:
alter table A
add(tel number(11));
2.2更改列:
2.2.1更改一列的大小
alter table A
modify(name varchar2(25));
注意:这里的更改数据大小的时候,如果更改后的数值小于数据库已有数据最小大小时候会报错。
2.2.2更改数据类型:
alter table A
modify(age varchar2(10));
2.2.3更改某一列的默认值:
alter table A
modify(name default ‘zcx’);
2.2.4设置不可用列
alter table B
set unused (name);
将其删除(这个时候是在数据库中将其删除):
alter table B
drop unused columns;
3、重命名表:
rename A to C;
4、截断表:
truncate table A;
表中包含的所有行将被删除,但表本身还在。
5、删除表
drop table A;
/*zcx*/
双引号的作用:查询时起别名的时候用
eg: select id from A “aa”;