千家信息网

mysql数据类型及使用SQL结构化查询语句方法

发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,下文主要给大家带来mysql数据类型及使用SQL结构化查询语句方法,希望这些内容能够带给大家实际用处,这也是我编辑mysql数据类型及使用SQL结构化查询语句方法这篇文章的主要目的。好了,废话不多说,
千家信息网最后更新 2025年01月25日mysql数据类型及使用SQL结构化查询语句方法

下文主要给大家带来mysql数据类型及使用SQL结构化查询语句方法,希望这些内容能够带给大家实际用处,这也是我编辑mysql数据类型及使用SQL结构化查询语句方法这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

MySQL 存储引擎,也被称为表类型:

MyISAM表:无事务处理功能,支持表锁

.frm:表结构定义文件

.MYD:表数据文件

.MYI:表索引文件

InnoDB表:支持事务处理功能,支持行锁

.frm:表结构定义文件

.ibd:表空间(包含数据和索引文件)

MySQL常用的查询命令:

SHOW ENGINES; #查看数据库支持的引擎及状态。

SHOW TABLE STATUS LIKE 'user' \G #查看表user的属性信息,\G竖排显示

mysqld --help --verbose #查看mysql支持的各种相关指令

SHOW CHARACTER SET; #显示所有支持的字符集

SHOW COLLATION ; #显示各个字符集下的排序规则


程序语言连接数据的方式:

动态SQL:通过函数或方法与数据库服务建立连接,

嵌入式SQL:


MySQL工具:

客户端工具:mysql(登录工具),mysqladmin(管理工具),mysqldump(备份工具),mysqlimport,mysqlcheck

云服务器端工具:mysqld(启动进程),mysqld_safe(安全线程),mysqld_multi(支持多实例)


MySQL配置文件:my.cnf

配置文件启动顺序为,/etc/my.cnf -->/etc/mysql/my.cnf -->$MYSQL_HOME/my.cnf -->

--default-extra-file=/path/to/somefile -->~/.my.cnf


MySQL启动失败的原因大致有:

1、此前mysql服务未关闭

2、数据初始化失败

3、数据目录位置错误

4、数据目录权限问题


DBA的工作内容:

开发DBA:数据库设计,SQL语句,存储过程,存储函数,触发器

管理DBA:安装,升级,备份,恢复,用户管理,权限管理,监控,性能分析,基准测试


MySQL数据类型:

数值型:

精确数值型:int(整数型) decimal(十进制型)

近似数值型:float(单精度浮点型) double(双精度浮点型) real(实数型)

字符型:

定长字符型:CHAR(NUM),BINARY(区分大小写) 最长不超过255个字符

变长字符型:VARCHAR(NUM),VARBINARY(区分大小写) 最长不超过65535

ENUM枚举型:ENUM('A','BB','CC','DD')用户只能在列举中选择一个

SET枚举字符串型

日期时间型:

date日期,time时间,datetime日期时间,timestamp时间戳,year年


数据类型需具备以下几点:

1、存入的值类型

2、占据的存储空间

3、是变长还是定长

4、如何比较及排序

5、是否能够索引


AUTO_INCREMENT 自动增长类型,需满足几点:必须为整型,非空,元符号,主键或唯一键

Usage: CREATE TABLE test(ID INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,Name CHAR(20))

创建一个test表,包含2个字段ID和Name,ID字段的修饰符必须是INT(整型),UNSIGNED(无符号的)

AUTO_INCREMENT(自动增长),NOT NULL(非空的),PRIMARY KEY(主键)。

Name字段类型为CHAR(20)(定长字符型长度为20).

mysql> SELECT LAST_INSERT_ID();


MySQL云服务器变量:

按作用域,分两类:

全局变量

SHOW GLOBAL VARIABLES LIKE ' '; 查看全局变量

会话变量

SHOW [SESSION] VARIABLES LIKE ' '; 查看会话变量

按生效时间,分两类:

可动态调整的变量:可即时修改

静态变量:

写在配置文件中,通过参数传递给mysqld

动态调整参数的生效方式:

全局变量:对当前会话无效,只对新建立会话有效;

会话变量:即时生效,但只对当前会话有效;


服务器变量:@@变量名

显示:SELECT

设定:SET GLOBAL|SESSION 变量名='value'


mysql> SET GLOBAL sql_mode='strict_all_tables'; #设定sql_mode的值为strict_all_tables

Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @@global.sql_mode; #查看sql_mode的全局变量

+-------------------+

| @@global.sql_mode |

+-------------------+

| STRICT_ALL_TABLES |

+-------------------+

1 row in set (0.00 sec)

mysql> SELECT @@sql_mode; #查看sql_mode的会话变量

+------------+

| @@sql_mode |

+------------+

| |

+------------+

1 row in set (0.00 sec)

对于以上关于mysql数据类型及使用SQL结构化查询语句方法,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。

0