SQL语句及其种类
1. SQL语句分为三类:
? ? DDL(Data Definition Language): CREATE、DROP、ALTER;
? ? DML(Data Manipulation Language): SELECT、INSERT、UPDATE、DELETE;
? ? DCL(Data Control Language): COMMIT、ROLLBACK、GRANT、REVOKE;
2. SQL语句的基本书写规则:
? ? SQL语句要以分号(;)结尾;
? ? SQL语句不区分大小写,但是插入到表中的数据是区分大小写的;
? ? 单词之间使用半角空格隔开;
表的创建、删除和更新
1. 创建数据库和表:
? ? 使用CREATE语句创建数据库:
? ? CREATE DATABASE shop;
? ? 该语句创建一个名为shop的数据库,使用该数据库:
? ? USE shop ? ?(MySQL)
? ? 使用CREATE语句创建表:
? ? CREATE TABLE <表名>(
? ? ? ? <列名1> <数据类型> <该列所需约束>,
? ? ? ? <列名2> <数据类型> <该列所需约束>,
? ? ? ? <列名3> <数据类型> <该列所需约束>,
? ? ? ? ? ? ? ? ? ? ? ? ?…
? ? ? ? <该表的约束1>, <该表的约束2>, ?...
? ? );
? ? 示例:
? ? CREATE TABLE Shohin(
? ? ? ? shohin_id ? ? ? ?CHAR(4) ? ? ? ? ? ?NOT NULL,
? ? ? ? shohin_mei ? ? VARCHAR(100) NOT NULL,
? ? ? ? shohin_bunrui VARCHAR(32) ? NOT NULL,
? ? ? ? hanbai_tanka ?INTEGER ? ? ? ? ? ,
? ? ? ? shiire_tanka ? ?INTEGER ? ? ? ? ? ,
? ? ? ? torokubi ? ? ? ? ? DATE ? ? ? ? ? ? ? ? ,
? ? ? ? PRIMARY KEY (shohin_id)
? ? );
? ? 创建好后,查看表的定义内容:
? ? SHOW COLUMNS from Shohin; (MySQL)
2. 命名规则:
? ? 1. 数据库名称,表名、列名都使用半角英文字母、半角数字、下划线组成,并且以半角英文字母开头;
? ? 2. 同一个数据库中不能有同名表,同一个表中不能有同名列;
3. 表的删除,使用DROP语句可以删除表格和数据库:
? ? DROP TABLE <表名>;
? ? DROP DATABASE <数据库名>;
? ? 表在删除后无法恢复;
4. 表定义的更新:
? ? 使用ALTER语句更新表的定义:
? ? ALTER TABLE <表名> ADD COLUMN <列的定义>;
? ?如: ALTER TABLE Shohin ADD COLUMN shohin_mei_kana VARCHAR(100);
? ? ALTER TABLE <表名> DROP COLUMN <列名>;
? ? 如 ALTER TABLE Shohin DROP COLUNM shohin_mei_kana;
? ? ALTER TABLE <表名> MODIFY <列名> <修改后的定义>;
? ? 如 ALTER TABLE Shohin MODIFY id integer auto_increment;
5. 修改表名:
? ? 标准SQL并没有RENAME,各个数据库更改表名的语句分别为:
? ? Oracle/PostgreSQL: ALTER TABLE Sohin RENAME TO Shohin;
? ? DB2: RENAME TABLE Sohin TO Shohin;
? ? SQL Server: sp_rename ’Sohin’, ’Shohin’;
? ? MySQL: RENAME TABLE Sohin TO Shohin;
6. 向表中插入数据:
? ? 使用INSERT语句向表中插入数据:
? ? INSERT INTO <表名> VALUES <每列的内容>;
? ? 如: INSERT INTO Shohin Values(‘0001‘,‘T-shirt‘,‘clothes‘,1000,500,‘2009-09-20’);
? ? 通过 SELECT * FROM Shohin查看表记录?
?