与 MySQL 的零距离接触
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一个开源的关系型数据库管理系统,分为社区版和企业版。
1 安装
直接前往官网 https://www.mysql.com/ ,进入download页面下载所需对应安装版本。默认配置安装即可。
2 配置
安装成功之后,需要修改密码。详看《MySQL 安装配置》
修改编码方式:
1 | [mysql] |
3 目录结构
bin目录,存储可执行文件。
data目录,存储数据文件。
docs,文档。
include目录,存储包含的头文件。
lib目录,存储库文件。
share,错误消息和字符集文件。
4 命令参数说明
参数 | 描述 |
---|---|
-D,–database=name | 打开指定数据库 |
–delimiter=name | 指定分隔符 |
-h,–host=name | 服务器名称 |
-p,–password[=name] | 密码 |
-P,–port=# | 端口号 |
–prompt=name | 设置提示符 |
-u,–user=name | 用户名 |
-V,–version | 输出版本信息并退出 |
MySQL提示符
参数 | 描述 |
---|---|
\D | 完整的日期 |
\d | 当前数据库 |
\h | 服务器名称 |
\u | 当前用户 |
命令使用
修改MySQL提示符
1.连接客户端时通过参数指定
1 | mysql -uroot -proot --prompt 提示符 |
2.连接上客户端后,通过prompt命令修改
1 | mysql>prompt 提示符 |
MySQL常用命令
1.显示当前服务器版本
1 | SELECT VERSION(); |
2.显示当前日期时间
1 | SELECT NOW(); |
3.显示当前用户
1 | SELECT USER(); |
MySQL语句规范
1.关键字与函数名称全部大写。
2.数据库名称、表名称、字段名称全部小写。
3.SQL语句必须以”;”符号结尾。
5 SQL
结构化查询语言(英语:Structured Query Language,缩写:SQL),是一种特殊目的之编程语言,用于数据库中的标准数据查询语言。
不过各种通行的数据库系统在其实践过程中都对SQL规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。
具体参看文章
《MySQL 中的SQL》
6 数据类型
数据类型是指列、存储过程参数、表达式和局部变量的数据特征,它决定了数据的存储格式,代表了不同信息的类型。
整型
浮点型
数据类型 | 存储范围 |
---|---|
FLOAT[(M,D)] | -3.402823466E+38到-1.175494351E-38、0和1.175494351E-38到3.402823466E+38。M是数字总位数,D是小数点后面的位数。如果M和D被省略,根据硬件允许的限制来保存值。单精度浮点数精确到大约7位小数点。 |
DOUBLE[(M,D)] | -1.7976931348623157E+308到-2.2250738585072014E-308、0和2.2250738585072014E-308到1.7976931348623157E+308。 |
日期和时间型
列类型 | 存储需求 |
---|---|
YEAR | 1 |
TIME | 3 |
DATE | 3 |
DATETIME | 8 |
TIMESTAMP | 4 |
字符型
列类型 | 存储需求 |
---|---|
CHAR(M) | M个字节,0<=M<=255 |
VARCHAR(M) | L+1个字节,其中L<=M且0<=M<=65535 |
TINYTEXT | L+1个字节,其中L<2^8 |
TEXT | L+2个字节,其中L<2^16 |
MEDIUMTEXT | L+3个字节,其中L<2^24 |
LONGTEXT | L+4个字节,其中L<2^32 |
ENUM(‘VALUE1’,’VALUE2’,…) | 1或2个字节,取决于枚举值的个数(最多65,535个值) |
SET(‘VALUE1’,’VALUE2’,…) | 1、2、3、4或者8个字节,取决于set成员的数目(最多64个成员) |
更多其他MySQL使用与知识可以参见《拆解 MySQL 的高阶使用与概念》