一、简介:
SQL——structred query language (结构化查询语言)
DDL——date definition language (数据定义语言)
DML——date mainipulation language (数据操作语言)
二、数据库的操作
1、创建数据库
语法:CREATE DATEBASE 数据库名;
CREATE DATABASE myschool;
2、查看数据库列表
语法:SHOW DATABASES——一定是复数
3、选择数据库
语法:USE 数据库名;
4、删除数据库
语法:DROP DATABASE 数据库名;
三、表操作
1、创建表
语法:USE 数据库名;
CREATE TABLE 表名( );
USE myschool;
CREATE TABLE t_student(studentNo INT(4) NOT NULL comment '学号' PRIMARY KEY);
2、查看表格
语法:SHOW TABLES——也一定是复数哦
3、查看表定义
语法:BESCRIBE 表名;
4、删除表
语法:DROP TABLE 表名;
5、修改表结构
语法:ALTER TABLE 表名 ADD 新增字段名称(不能更换位置) 字段的数据类型 、长度、非空、默认值等
ALTER TABLE t_student ADD studentName VARCHAR(50) NOT NULL;
6、变更字段名称
语法:ALTER TABLE 表名 CHANGE 原来的旧字段名 新字段名 数据类型(长度);
ALTER TABLE t_student CHANGE sex gender CHAR(4);
小知识点:变更前后的数据类型必须相同,数据长度可以不同
7、更新字段名(应用的场景:字段属性、包括默认值、数据类型、非空、自增长、主/外键、唯一约束等)
语法:ALTER TABLE 表名 MODIFY 字段名;
ALTER TABLE t_student MODIFY gradeID INT(40) UNIQUE KEY;
8、删除字段
语法:ALTER TABLE 表名 DROP COLUMN(唯一约束 index) 字段名;
ALTER TABLE t_student DROP COLUMN gender;
9、添加外键约束
语法:ALTER TABLE 含有外键的表名 ADD CONSTRAINT 外键名 FOREIGN KEY (含有外键的字段) REFERENCES 主表 (主键/唯一约束);
ALTER TABLE t_deposit ADD CONSTRAINT fk_deposit_user_username FOREIGN KEY
(username) REFERENCES t_user(username);
10、删除外键约束
语法:ALTER TABLE 含有外键的表名 DROP FOREIGN KEY (外键名);
ALTER TABLE t_deposit DROP FOREIGN KEY fk_deposit_user_username;
四、使用DML新增和更新数据
1、插入数据
语法:INSERT INTO 表名 VALUES(值);每个具体数据用逗号分隔,且字段必须和输入数据的次序一一对应
INSERT INTO t_user VALUES('chenxiao','1212','小陈','2003-09-15',19.30);
2、修改数据
语法:UPDATE 表名 SET 字段名 =值[WHERE 条件表达式];
UPDATE t_user SET balance+=20 WHERE name1='小陈';
有没有引号看具体字段的数据类型,中间用逗号分隔
3、使用DML删除表数据 ——表还在,只是删除了表当中的所有数据
语法:DELETE FROM 表名 [WHERE 字段名=值];
DELETE FROM t_bickes WHERE bikeid=2;
删除含有外键时:
RESTRICT--表示此外键内容不能删除
SET NULL--主表被删除后值变为null(建议)
CASCADE--主表被删除后,从表内容跟着删除(不建议)
注:外键添加前是不能先输入数据的,需要先设置外键才能再添加数据
五、SELECT数据查询
1、查询表中全部信息
语法:SELECT*FROM 表名;
*代表全部
2、局部查询
SELECT 字段名1 字段名1 中文注释,字段名2 字段名2 中文注释 FROM flight;
SELECT flightID 航班号,model 机型 FROM flight;
3、查询不重复字段
语法:SELECT DISTINCT 字段 列别名 FROM 表名;
SELECT DISTINCT model 机型 FROM flight;
4、MYSQL运算符
算术运算符: + - * / %
比较运算符: = <=> != >= <= < > IS NULL IS NOT NULL
逻辑运算符:AND 与 OR 或 NOT 非 XOR