mysql编目_31、mysql数据类型

SQL语言组成部分:

DDL: 数据定义语言(DATABASE、TABLE、VIEW)

DML: 数据操作语言(SELECT、INSERT、REPLACE、UPDATE、DELETE)

完整性定义语言:DDL的一部分功能

主键、外键、惟一键、条件、非空、事务

视图定义:虚表,存储下来的SELECT语句

事务控制:

嵌入式SQL和动态SQL:

DCL:授权

数据类型的功用:

1、存储的值类型;

2、占据的存储空间;

3、定长,变长;

4、如何被索引及排序;

5、是否能够被索引;

数据字典:系统编目(system catalog)

保存数据库服务器上的元数据

元数据:

关系的名字

每个关系的各字段的名字

各字段的数据类型和长度

约束

每个关系上的视图的名字及视图的定义

授权用户的名字

用户的授权和帐户信息

统计类的数据:

每个关系字段的个数;

每个关系中行数;

每个关系的存储方法;

保存元数据的数据库:

information_schema

mysql

performance_shcema

数据类型:

字符型

数值型

精确数值型

近似数值型

单精度浮点型

双精度浮点型

日期时间型

日期型

时间型

日期时间型

时间戳

布尔型

内建类型

ENUM, SET

字符型:

CHAR

VARCHAR

TINYTEXT

TEXT

MEDIUMTEXT

LONGTEXT

BINARY

VARBINARY

TINYBLOB

BLOB

MEDIUMBLOB

LONGBLOB

ENUM

SET

数值型:

TINYINT

SMALLINT

MEDIUMINT

INT

BIGINT

DECIMAL

FLOAT

DOUBAL

BIT

日期时间型:

DATE

TIME

DATETIME

TIMESTAMP

YEAR

CHAR、VARCHAR和TEXT几种字符型常用的属性修饰符:

NOT NULL非空约束

NULL允许为空

DEFAULT 'string'默认值,不适用于TEXT类型

CHARACTER SET '字符集'设置默认字符集

COLLATION '规则'排序规则

查看当前的字符集

SHOW VARIABLES LIKE '%char%';

查看可用的字符集

SHOW CHARACTER SET;

设置字符集

SET character_set_filesystem = utf8;

查看可用的排序规则

SHOW COLLATION;

BINARY、VARBINARY和BLOB几种字符型常用的属性修饰符:

NOT NULL     非空约束

NULL            允许为空

DEFAULT不适用于BLOB

整型的常用属性修饰符:

AUTO_INCREMENT自动增长(前提:非空,且惟一;支持索引,非负值;)

UNSIGNED无符号

NULL

NOT NULL

DEFAULT

浮点型常用修饰符:

NOT NULL

NULL

DEFAULT

UNSIGNED

日期时间型的修饰符:

NOT NULL

NULL

DEFAULT

ENUM和SET的修饰符:

NOT NULL

NULL

DEFAULT ''

MySQL SQL_MODE: SQL模式

TRADITIONAL, STRICT_TRANS_TABLES, or STRICT_ALL_TABLES

设定服务器变量的值:(仅用于支持动态的变量)

支持修改的服务器变量:

动态变量:可以MySQL运行时修改

静态变量:于配置文件中修改其值,并重启后方能生效;

服务器变量从其生效范围来讲,有两类:

全局变量:服务器级别,修改之后仅对新建立的会话有效;

会话变量:会话级别,仅对当前会话有效;

会话建立时,从全局继承各变量;

查看服务器变量:

mysql> SHOW [{GLOBAL|SESSION}] VARIABLES [LIKE ''];

mysql> SELECT @@{GLOBAL|SESSION}.VARILABLE_NAME;

mysql> SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='SOME_VARIABLE_NAME';

mysql> SELECT * FROM INFORMATION_SCHEMA.SESSION_VARIABLES WHERE VARIABLE_NAME='SOME_VARIABLE_NAME';

修改变量

前提:默认仅管理员有权限修改全局变量

mysql> SET {GLOBAL|SESSION} VARIABLE_NAME='VALUE';

注意:无论是全局还是会话级别的动态变量修改,在重启mysqld后都会失效;想永久有效,可定义在配置文件中的相应段中[mysqld];

MySQL中字符大小写:

1、SQL关键字及函数名不区分字符大小写;

2、数据库、表及视图名称的大小区分与否取决于低层OS及FS

3、存储过程、存储函数及事件调度器的名字不区分大小写,但触发器区分;

4、表别名区分大不写;

5、对字段中的数据,如果字段类型为Binary类型,则区分大小写;非Binary不区分大小写;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值