DDL 语句和 DML 语句
- 用DDL定义数据库
- 用DDL保护数据库
- 应用DML新增和更新表数据
- 应用DML删除表
DDL 定义数据库
数据定义语言(Data Definition Language,DDL)是一种用于形容数据库所需存储的事实世界实体的专门语言, 其次要工作是用于定义和保护数据库以及数据表构造。
创立数据库语句
CREATE DATABASE 数据库名
删除数据库语句
DROP DATABASE 数据库名
查看数据库
SHOW DATABASES
创立库 -> 表 - >列
创立数据库语句
CREATE TABLE 表名( column_name(字段名) date_type(字段数据类型) default_value(默认值) (数据完整性束缚), );示范: CREATE TABLE 表名( UserName int primary key auto_increment not null, Sex varchar(2) default '男' );
给表增加外键
-- 主键:PRIMARY KEY (表面必须有主键) /* FOREIGN KEY (以后表的列) REFERENCES 外键的表 (表面的列);*/CREATE TABLE A( sid INT PRIMARY KEY -- 留神:关联的表 必有主键);CREATE TABLE B( Sid INT, FOREIGN KEY(Sid) REFERENCES A(Sid) -- B的sid被外键A的SID限度 );
注意事项 : 1. 被关联的外键必须是主键 2.数据类型要统一.
用DDL保护数据库
批改表构造
- 增加一段字段
ALTER TABLE 表名 add(字段名 类型) ;-- 如 : ALTER TABLE A ADD(Sid INT);
- 批改一列字段 小提示: modify 后不必更括号
ALTER TABLE 表名 modify 字段名 类型 ;-- 如 : ALTER TABLE B MODIFY SName varchar(20);
- 变更一列字段
ALTER TABLE 表名 CHANGE 原字段 新字段 类型 ;-- 如 : ALTER TABLE A CAHNGE phone iphone varchar(15)
- 更新一列字段
ALTER TABLE 表名 MODIFY 列字段 类型 ;-- 如 ALTER TABLE A MODIFY phone int(12) ;
- 删除字段子句
ALTER TABLE 表名 DROP COLUMN 列字段-- ALTER TABLE A DROP COLMN phone;
7.重命表名
RENAME TABLE 表名 TO 要改的表名-- RENAME TABLE TEXT1 TO TEXT2
8.增加外键
-- 表建完后增加外键 /*ALTER TABLE 本表名 ADD CONSTRAINT 束缚键 FOREIGN KEY(本表的键) REFERENCES 被援用的别表名(被援用的表主键)*/ ALTER TABLE A ADD CONSTRAINT SID FOREIGN KEY(SID) REFERENCES B(SID); -- 创立表时增加外键# FOREIGN KEY (以后表的键) REFERENCES 抉择关联的表面(他的主键)CREATE TABLE A( SID INT PRIMARY KEY);CREATE TABLE B( SID INT, FOREIGN KEY(SID) REFERENCES A(SID));
9.删除外键
ALTER TABLE 表 DROP FOREIGN KEY 外键-- ALTER TABLE verdir DROP FOREIGN KEY SID
总结: ALTER TABLE 表 批改数据.
应用 DML 新增和更新表数据
数据操纵语言(Data Manipulation Language,DML) 由 DBMS 提供,用于让用户或程序员应用,实现对数据库中数据的操作。根本的 DML 分为两类四种:检索(查问)和更新(插入、删除、批改)。
1.插入
-- INSERT INTO 表名 values(数据一,数据二, )INSERT INTO A VALUES(1,'曹操')/* 插入多条 INSERT INTO 表名 values(1,'数据'),(2,'数据'),(3,'数据')*/INSERT INTO A VALUES(1,'李白'),(2,'杜甫'),(3,'杜牧')
2.批改 留神: 不加where默认全副批改
/* UPDATE 表 SET 字段1 = 值1 , 字段2 = 值2 WHERE 条件表达式*/UPDATE ASET id = 2 sname = '李四';
应用 DML 删除表数据
3.删除 留神:不加where默认全副删除
/* DELETE FROM 表名 where 条件表达式*/DELETE FORM A WHERE sName = '张三';