SQL必知必会 第十七课 笔记——创建和操纵表

第17课 创建和操纵表
这一课讲授创建、更改和删除表的基本知识。
17.1 创建表
17.1.1 表创建基础
利用 CREATE TABLE创建表,必须给出下列信息:
1)新表的名字,在关键字CREATE TABLE之后给出;
2)表列的名字和定义,用逗号分隔;
3)有的DBMS还要求指定表的位置。
CREATE TABLE Products
(prod_id CHAR(10) NOT NULL,
vend_id CHAR(10) NOT NULL,
prod_price DECIMAL(8,2 NOT NULL, prod_desc VARCHAR(1000) NULL
);
每个表列要么是NULL列,要么是NOT NULL列,这种状态在创建时由表的定义规定。NULL为默认设置,如果不指定NOT NULL,就认为指定的是NULL。

17.1.3 指定默认值
SQL允许指定默认值,在插入行时如果不给出值,DBMS将自动采用默认值。默认值在CREATE TABLE语句的列定义中用 关键字DEFAULT指定。
CREATE TABLE OrderItems
(order_num INTEGER NOT NULL,
order_item INTEGER NOT NULL,
quantity INTEGER NOT NULL DEFAULT 1 ,
item_price DECIMAL(8,2) NOT NULL
);
quantity列为订单中每个物品的数量。在这个例子中,这一列的描述增加了DEFAULT 1,指示DBMS,如果不给出数量则使用数量1。

17.2 更新表
更新表定义,可以使用 ALTER TABLE语句。虽然所有的DBMS都支持ALTER TABLE,但它们所允许更新的内容差别很大。
使用ALTER TABLE更改表结构,必须给出下面的信息:
1)在ALTER TABLE之后给出要更改的表名(该表必须存在,否则将出错);
2)列出要做哪些更改
ALTER TABLE Vendors
ADD vend_phone CHAR(20);
分析▼
这条语句给Vendors表增加一个名为vend_phone的列,其数据类型为CHAR。
警告:小心使用ALTER TABLE
使用ALTER TABLE要极为小心,应该在进行改动前做完整的备份(模式和数据的备份)。数据库表的更改不能撤销,如果增加了不需要的列,也许无法删除它们。类似地,如果删除了不应该删除的列,可能会丢失该列中的所有数据。

17.3 删除表
删除表(删除整个表而不是其内容)非常简单,使用 DROP TABLE语句即可:
DROP TABLE CustCopy;

小结
这一课介绍了几条新的SQL语句。CREATE TABLE用来创建新表,ALTER TABLE用来更改表列(或其他诸如约束或索引等对象),而DROP TABLE用来完整地删除一个表。这些语句必须小心使用,并且应该在备份后使用。由于这些语句的语法在不同的DBMS中有所不同,所以更详细的信息请参阅相应的DBMS文档。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值