您的位置:首页 > 数据库

SQL基础入门学习(1)

2017-09-04 20:13 363 查看
1、创建产品(product)表
CREATE TABLE product
(
product_id CHAR(4) NOT NULL,
product_name VARCHAR(100) NOT NULL,
product_type VARCHAR(32) NOT NULL,
sale_price INTEGER,
purchase_price INTEGER,
regist_date DATE,
PRIMARY KEY (product_id)
);

2、向Product表中添加新列 product_name_alias 要求存储长度为100的可变长字符
DB2 PostgreSQL MySQL
ALTER TABLE product ADD COLUMN (product_name_alias VARCHAR(100));
SQL Server
ALTER TABLE product ADD product_name_alias VARCHAR(100);
Oracle
ALTER TABLE product ADD (product_name_alias VARCHAR2(100));

3、删除product表
DROP TABLE product;

4、删除product表中product_name_alias列
DB2 PostgreSQL MySQL
ALTER TABLE product DROP COLUMN product_name_alias;
Oracle SQL Server
ALTER TABLE product DROP (product_name_alias);

5、变更表名
SQL Server
sp_rename `product`, `product`;
Oracle PostgreSQL
ALTER TABLE product RENAME TO product;
MySQL
RENAME TABLE product TO product;
DB2
RENAME TABLE product TO product;

课后练习1-1
CREATE TABLE addressbook
(
regist_no INTEGER NOT NULL,
`name` VARCHAR(128) NOT NULL,
address VARCHAR(256) NOT NULL,
tel_no CHAR(10),
mail_address CHAR(20),
PRIMARY KEY(regist_no)
);
课后练习1-2
[PostgreSQL] [MySQL]
ALTER TABLE addressbook ADD COLUMN postal_code CHAR(8) NOT NULL;

[Oracle]
ALTER TABLE addressbook ADD (postal_code CHAR(8)) NOT NULL;

[SQL Server]
ALTER TABLE addressbook ADD postal_code CHAR(8) NOT NULL;

/*
[DB2] 无法添加。
在DB2中,如果要为添加的列设定NOT NULL约束,
需要像下面这样指定默认值,或者删除NOT NULL约束,
否则就无法添加新列。

*/
[DB2 修正版]
ALTER TABLE addressbook ADD COLUMN postal_code CHAR(8) NOT NULL DEFAULT '0000-000';
课后练习1-3
DROP TABLE addressbook;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: