sql笔记

字符串:

带n 代表Unicode 字母数字占一个字节,汉字占两个字节。
不带n 代表不是Unicode 占一个字节。
带var 不会自动补充。可变长度。
不带var 会自动补充空格。固定长度。
如果明确长度,使用带var的char ,可变长度。
能使用固定长度就使用固定长度,减少资源浪费。
首先判断是否需要中文,若需要加n,否者反之,然后判断长度是否可变,若可变加var,反之不加var。
bit: 只存0/1
date: 只存日期
time: 只存时间
datetime:日期时间都存
decimal(5,2):代表5个数字,2个小数位。
约束:
通过自己写代码来判断数据是否有效。
对日期的约束:

外键: 对关系值的进行检查,保障关系的有效。
主键:主体部分,起作用的部分。
外键:被决定部分的表。(其他表的主键)

查找
索引:

ADD INDEX usename (score);
(创建了根据score列的索引)
ADD UNIQUE INDEX username (name); (通过UNIQUE关键字创建了唯一索引)
ADD CONSTRAINT username UNIQUE (name);(具备了约束,但不具备索引)
普通查找:

SELECT * FROM classes;
(SELECT 是关键字,* 号代表查找所有列,FROM 代表查找哪个表。)

测试数据库是否连接

SELSCT 1 ; 可以用来测试数据库连接
条件查询:
SELECT * FROM students WHERE score > 80 ;
(查询分数大于80的记录)
SELECT * FROM <表名> WHRERE <条件>;
SELECT * FROM <表名> WHERE <条件1> AND <条件2> ;
SELECT * FROM <表名> WHERE <条件1> OR <条件2> ;
SELECT id ID FROM students ;(将列名重新命名为ID)
SELECT id,name,FROM students ORDER BY score;(对分数排序,默认由小到大)
SELECT id, name , gender, score FROM students ORDER BY score DESC;(对分数进行排序,倒叙)
LIMIT OFFSET 分页显
SELECT COUNT(*) FROM students(聚合查询)
插入
INSERT INTO <表名> (字段1, 字段2, …) VALUES (值1, 值2, …);
INSERT INTO students (class_id, name, gender, score) VALUES
(1, ‘大宝’, ‘M’, 87),
(2, ‘二宝’, ‘M’, 81);
UPDATE <表名> SET 字段1=值1, 字段2=值2, … WHERE …;(格式)
UPDATE students SET name=‘大牛’, score=66 WHERE id=1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值