*本文章仅为某个人的记录,仅供参考
创建数据库:
-- 其中数据库的名字不能用关键字(已被使用的字符)或者保留字(将来可能会用到)
-- SET utf8 可以省略不写,使用默认的字符集
CREATE DATABASE 数据库名称 [库选项];
-- 库选项:用来约束数据库,分为两个选项:
-- 字符集设定:charset/character 具体字符集(数据存储的编码格式)常用
-- 字符集:GBK和utf8
-- 校对集设定:collate 具体校对集(数据比较的规则)
-- SQL报错只会报告你大概的位置,不会说明报错原因(静默模式)
-- 如果非要使用关键字或者保留字作为数据库名,那么必须使用反引号(ESC下面的键在英文状态下输出),或者使用图形用户界面
修改数据库(此处修改了数据库的字符集):
alter database 数据库名 charactor set gbk;
删除数据库:
drop database 数据库名称;
使用数据库:
use 数据库名;
查看数据库中多少张表:
show tables;
新建表:
-- 注意最后一个没有逗号
CREATE TABLE '表名'(列名1 列的类型 [约束],列名2 列的类型 [约束],.........);
为已有的表添加字段:
alter table 表名 add 字段名 类型(约束);
查看表结构:
desc 表名;
修改表名:
RENAME TABLE 表名 TO 要修改的表名;
修改表的字符集:
ALTER TABLE 表名 CHARACTER SET 字符集名称;
修改表的列名:
ALTER TABLE 表名 CHANGE 原始列名 新列名 数据类型;
查看创建表的细节:
SHOW CREATE TABLE 表名;
删除一列:
ALTER TABLE 表名 DROP 字段名;
删除表:
DROP TABLE 表名;
插入操作:
INSERT INTO 表名(列1列2..) VALUE (列值1,列值2..);
-- 另一种写法:(没有写列名,相当于每行的列值全部写出来)
INSERT INTO VALUE(列值1,列值2,列值3..);
批量插入:
INSERT INTO 表名(列名1,列名2..) VALUE(列值1,列值2..),(列值1,列值2..),(列值1,列值2..);
更新操作:
UPDATE 表名 SET 列=n 列='字段' WHERE 某一列=已有值 ;
删除列操作:
DELETE FROM 表名 [WHERE 列名=值];
删除表:
TRUNCATE TABLE 表名;
--DELETE 与TRUNCATE 的区别:
-- 前者删除表中的数据,表结构还在
-- 后者是直接把表drop掉,然后再创建一个同样的新表,执行速度比delete快