1、使用 DROP TABLE 表名 语句来删除表
2、使用ALTER TABLE语句向表中添加列或者从表中删除列
表的删除:(DROP TABLE 语句)
drop table 表名;
表的更新:(ALTER TABLE语句)
添加列使用的语法:
alter table 表名 add column 列的定义;
Oracle 和 Sql Server中不用写column
alter table 表名 add 列名
另外在Oracle中同时增加多个列可以像下面这样使用括号
alter table 表名 add(列名1,列名2,列名3);
例如:增加一列可以存储100位可变长字符串的name列
DB2 、PostgreSql、MySql
alter table 表名 add column name varchar(100);
Orcle
alter table 表名 add (name varchar(100));
Sql server
alter table 表名 add name varchar(100);
删除列的ALTER TABLE 语句
Oracle中可以不用加column
alter table 表名 drop 列名;
Oracle 中删除多列的时候可以使用以下:
alter table 表名 drop (列名1,列名2,列名3......);
向表中插入数据:
Sql server 、PostgreSql
BEGIN TRANSACTION
INSERT INTO NAME VALUES ('0001','NAME1');
INSERT INTO NAME VALUES ('0002','NAME2');
INSERT INTO NAME VALUES ('0003','NAME3');
COMMIT;
在Mysql中运行时,无需使用
begin transaction,改写成:start transaction ;
在Oracle 和DB2 中无需使用begin transaction;
修改表名:
Oracle PostgreSQL:
alter table 表名 rename to 新表名;
DB2:
RENAME table 表名 to 新表名;
Sql server;
sp_rename '表名','新表名';
Mysql:
RENAME table '表名'to'新表名'
练习:
编写一条 CREATE TABLE 语句,用来创建一个包含表 1-A 中所列各项的表 Addressbook(地址簿),并为 regist_no(注册编号)列设置主键约束。
注册编号 regist_no 整数型 不能为NULL、主键
姓名 name 可变长字符串类型(长度为128) 不能为NULL
住址 address 可变长字符串类型(长度为256) 不能为NULL
电话号码 tel_no 定长字符串类型(长度为10)
邮箱地址 mail_address 定长字符串类型(长度为20)
create table Addressbook(
regist_no integer primary key not null,
name varchar(128) not null,
address varchar(256) not null,
tel_no char(10),
mail_address char(20)
);
假设在创建练习 1.1 中的 Addressbook 表时忘记添加如下一列 postal_code(邮政编码)了,请把此列添加到 Addressbook 表中。
列名 :postal_code
数据类型 :定长字符串类型(长度为 8)
约束 :不能为 NULL
alter table Addressbook add column postal_code char(8) not null
注:Oracle 可以不用加column
编写 SQL 语句来删除 Addressbook 表。
Drop table Addressbook ;