目录
一、sql分类
1.1 语言规范
在数据库系统中,SQL 语句不区分大小写,建议用大写,SQL语句可单行或多行书写,默认以 " ; " 结尾,关键词不能跨多行或简写,用空格和TAB 缩进来提高语句的可读性,子句通常位于独立行,便于编辑,提高可读性。
1.1.1 命名规则
必须以字母开头,后续可以包括字母,数字和三个特殊字符(# _ $),不要使用MySQL的保留字,tabble select show databases。
1.2 sql语句分类
#DDL: Data Defination Language 数据定义语言 CREATE,DROP,ALTER |
#DML: Data Manipulation Language 数据操纵语言 INSERT,DELETE,UPDATE |
#DQL:Data Query Language 数据查询语言 SELECT |
#DCL:Data Control Language 数据控制语言 GRANT,REVOKE,COMMIT,ROLLBACK |
1.3 查看帮助信息
mysql> help drop
Many help items for your request exist.
To make a more specific request, please type 'help <item>',
where <item> is one of the following
topics:
ALTER TABLE
ALTER TABLESPACE
DEALLOCATE PREPARE
DROP DATABASE
DROP EVENT
DROP FUNCTION
DROP FUNCTION LOADABLE FUNCTION
DROP INDEX
DROP PREPARE
DROP PROCEDURE
DROP SCHEMA
DROP SERVER
DROP TABLE
DROP TABLESPACE
DROP TRIGGER
DROP USER
DROP VIEW
1.4 查看支持字符集
mysql> show charset;
+----------+---------------------------------+---------------------+--------+
| Charset | Description | Default collation | Maxlen |
+----------+---------------------------------+---------------------+--------+
| big5 | Big5 Traditional Chinese | big5_chinese_ci | 2 |
| dec8 | DEC West European | dec8_swedish_ci | 1 |
| cp850 | DOS West European | cp850_general_ci | 1 |
| hp8 | HP West European | hp8_english_ci | 1 |
| koi8r | KOI8-R Relcom Russian | koi8r_general_ci | 1 |
| latin1 | cp1252 West European | latin1_swedish_ci | 1 |
| latin2 | ISO 8859-2 Central European | latin2_general_ci | 1 |
| swe7 | 7bit Swedish | swe7_swedish_ci | 1 |
| ascii | US ASCII | ascii_general_ci | 1 |
| ujis | EUC-JP Japanese | ujis_japanese_ci | 3 |
| sjis | Shift-JIS Japanese | sjis_japanese_ci | 2 |
| hebrew | ISO 8859-8 Hebrew | hebrew_general_ci | 1 |
| tis620 | TIS620 Thai | tis620_thai_ci | 1 |
| euckr | EUC-KR Korean | euckr_korean_ci | 2 |
| koi8u | KOI8-U Ukrainian | koi8u_general_ci | 1 |
| gb2312 | GB2312 Simplified Chinese | gb2312_chinese_ci | 2 |
| greek | ISO 8859-7 Greek | greek_general_ci | 1 |
| cp1250 | Windows Central European | cp1250_general_ci | 1 |
| gbk | GBK Simplified Chinese | gbk_chinese_ci | 2 |
| latin5 | ISO 8859-9 Turkish | latin5_turkish_ci | 1 |
| armscii8 | ARMSCII-8 Armenian | armscii8_general_ci | 1 |
| utf8 | UTF-8 Unicode | utf8_general_ci | 3 |
默认拉丁文字
utf8 | UTF-8 Unicode
#阉割版的
utf8mb4 | UTF-8 Unicode
#真实的版本
二、基本操作
2.1 查看表使用表
2.2 创建表
创建新的数据库
CREATE DATABASE 数据库名;
创建新的表
CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);
#主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。
2.3 删除表
mysql> drop table info;
Query OK, 0 rows affected (0.01 sec)
2.4 查看表结构
2.5 添加记录
如果数据设主键时,插入数据时不能为空
2.6 查询特定字段
#查看指定字段字段
格式 select 字段1,字段2 from 表名 [where 条件表达式]
可以使用where来写条件表达式
2.7 查询头部信息
mysql> select * from info limit 2;
##一行之后的3行
2.8 修改数据
update 表名 set 字段名1=修改字段值1 ,字段名2=修改的字段值2 [where 条件表达式]
mysql> update info set name='user_name';
##更改数据中的记录
2.9 删除指定的数据记录
mysql> delete from info where name='a';
delete from 表名
将整个表中的数据整个删除
3.0 扩展表结构
alter table 旧表名 add address varchar(50) default 'no';
default 字段 表示没有设置时会自动匹配
3.1 删除字段
alter table 表名 drop 字段名