MySql学习

一、SQL语句分类

1.DQL语句 数据查询语句
SELECT FROM WHERE…

2.DML语句 数据操作语句
INSERT 新增
UPDATE 修改
DELETE 删除

3.DDL语句 数据定义语句
CREATE 新建
ALTER 更改
DROP 删除
TRUNCATE 截断

4.DCL语句 数据控制语句
GRANT 授权
REVOKE 收回权限

5.TCL语句 事物控制语句
COMMIT 提交
ROLLBACK 回滚

二、数据类型(方言)

数字:
标准:int4或numeric
MySQL:int,double
Oracle:number(8,2)

文本:
MySQL:
varchar(10)可变长度文本
char(10) 固定长度文本,数据长度不足,补充空格
Oracle: varchar2(10)

时间:
MySQL:
date 日期(年月日)
time 时间(时分秒) 精度毫秒
datetime 日期时间 (年月日时分秒)
timestamp 时间戳

其他:
boolean 真假
blob 二进制数据
clob 字符流数据

三、DDL语句(数据定义语句)

用于操作数据库对象(表,视图,索引,序列…)的创建,修改和删除

表:table
视图:view
索引:index
序列:sequence

SQL语句是大小写不敏感的
数据是大小写敏感的:如Lucy和LUCY

1.创建表 Creat Table 表名(列名1 数据类型1,
列名2 数据类型2,…);

2.修改表 Alter
(1) 修改表名
ALTER TABLE 原表名 Rename 新表名;
ALTER TABLE students RENAME haha;

(2) 追加一个列
ALTER TABLE 表名 ADD COLUMN 列名 数据类型;

(3) 改变一个列
ALTER TABLE 表名 CHANGE 旧列名 新列名 新的数据类型;

(4) 删除一个列
ALTER TABLE 表名 DROP COLUMN 列名;

3.删除表
DROP TABLE 表名;

4.截断表(清空表中的所有的数据,但是保留表的自身)
TRUNCATE TABLE 表名;

四、表的约数

约束录入表的数据的准确性,通过对列进行约束来实现效果

1.主键约束(重要)
PRIMARY KEY
约束列的数据有整行数据的代表性=> 唯一且非空
但是尽量不适用有现实意义的数据做为主键
无现实意义的列没有修改的可能,不会因外界因素修改数据造成冲击
CREATE TABLE XXX(
xx int(4) PRIMARY KEY,
…);
ALTer TABLE xxx ADD CONSTRAINTS PRIMATY KEY(zz);

联合主键: 使用多个列的数据组成作为主键,通常是在多对多的关系表中出现

总结:一张表最多只能设置一个主键约束,但可以同时约束多个列(联合主键)

2.外键约束
一张表的某个列的数据,来源于其他表的主键列或唯一列,这个列的数据就应该是外键约束。

3.唯一约束 UNIQUE
被约束列的数据必须是唯一的,可以为空,一个表可以设置多个唯一约束。

4.非空约束 not null
被约束列的数据必须录入,不能为空,列级约束
CREATE TABLE X(xxx int(4) not null);

5.检查约束(MySql不支持)
check 自定义约束
Creat table xxx(xxx int(4) check(xxx>1000 and xxx<10000))

四、DML语句(数据操作语句)

1.数据插入(新增)

方式1:(要求按列的顺序提供全部的数据) inset into 表 values(值1,值2,…值n);

方式2:(输入指定列的数据):insert into 表(列1,列2…列n)values(值1,值2,…值n)

2.数据修改
UPDATE 表名 SET 列1=新值1,列2=新值2,…列n=新值n[where 条件]

4.数据删除
DELETE FROM 表名[where 条件]:不加条件删除所有数据。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值