当前开发版本 VERSION() 8.0.31
要查看 MySQL 的版本,可以使用以下 SQL 命令:
SELECT VERSION();
或者,你也可以在命令行中使用以下命令查看版本信息
mysql --version
常用基础
- 进入 mysql 程序
mysql -u root -p
- 退出 mysql 程序
mysql > exit;
注: mysql 语句要以;(分号结尾)
- 查看当前用户(root)可查看的数据库列表
mysql > show databases;
- UTF-8 和 gb2312 字符集的区别 ?
字库规模: UTF-8(字全) > gb2312(只有汉字)
保存大小: UTF-8(更臃肿、加载更慢) > gb2312 (更小巧,加载更快)
- 比较规则
后缀 英文释义 描述
ai accent insensitive 不区分重音
as accent sensitive 区分重音
ci case insensitive 不区分大小写
cs case sensitive 区分大小写
bin binary 以二进制方式比较
- 查询一下 支持的字符集
mysql> SHOW CHARSET;
- 查看一下 utf8 字符集下的比较规则:
如果您想要查看特定字符集的比较规则,可以使用以下命令:
SHOW COLLATION LIKE 'utf8%';
- navicate 设置默认值 (navicate 12)
- 查看表的名称
mysql> show tables;
查看非当前数据库中的数据表的名称
mysql> show tables from db_name;
查看数据库中表的结构
mysql> desc table_name;
- MYSQL 常用的数据类型
数值型
日期和日期时间型
字符型
char 固定长度的字符数据类型 用于保存文本格式存储信息。当保存时右侧填充空格以达到指定长度。其范围是 0~255 个字符。
varchar 可变长度的字符数据类型 用于保存文本格式存储信息。其范围是 0~65535 个字符。
选择 CHAR 还是 VARCHAR 取决于具体的使用场景和需求。
如果数据项的长度变化不大,且对性能有较高要求,可以选择 CHAR。CHAR 类型用于存储固定长度的字符串,由于其固定长度的特性,处理速度通常比 VARCHAR 快,尤其是在索引操作时。此外,如果数据项的长度固定或接近固定,使用 CHAR 类型在存储空间上可能更有效率,尤其是在存储很短的字符串时,如密码的 MD5 值等 12。
如果数据项的长度变化较大,且希望节省存储空间,可以选择 VARCHAR。VARCHAR 类型用于存储可变长度的字符串,它仅使用必要的空间来存储实际的字符串内容,根据字符串的实际长度改变存储空间的需求。这种灵活性使得 VARCHAR 在存储长度可变的字符串时更为合适,如姓名、地址或描述性文本等 。
考虑字符集和编码方式 。如果使用了复杂的字符集,如 UTF-8,每个字符可能使用不同数量的字节进行存储,这种情况下 VARCHAR 可能更为合适,因为它可以适应不同长度的字符 。
考虑更新频率。 对于经常变更的数据,CHAR 比 VARCHAR 更好,因为定长的 CHAR 类型不容易产生碎片。然而,这通常适用于非常短的字符串,如密码的 MD5 值等 。
综上所述,选择 CHAR 还是 VARCHAR 应根据具体的应用场景和需求来决定。如果数据长度固定或接近固定,且对性能有较高要求,应选择 CHAR;如果数据长度变化较大,或希望节省存储空间,则应选择 VARCHAR。
约束相关
-
主键约束
-
候选键约束
候选键:如果一个表中具有多个能够标识一个元组的属性,则这些属性称为候选键。例如,若给定学号或者身份证号,都可以确定一个学生的全部的基本信息,因此学号和身份证号都是候选键。候选键中任选一个可作为主键。
- 用户自定义条件约束
以下是一些 CHECK 约束条件示例:
salary > 0: 确保 salary 列的值大于 0。
age BETWEEN 18 AND 65: 确保 age 列的值介于 18 和 65 之间。
gender IN ('M', 'F'): 确保 gender 列的值为 'M' 或 'F'。
navicate 设定唯一约束
- 打开数据库右键要设置表字段唯一约束的表
- 点击索引,进入索引界面
- 设置名,选择表的字段
4. 点击索引列表下拉按钮,选择唯一类型
-
保存
-
写个插入语句执行,第一次成功,第二次表唯一约束异常说明表字段唯一约束设置成功