MySQL

打印 上一主题 下一主题

主题 893|帖子 893|积分 2679

字符编码与配置文件
  1. # 由于5.6版本编码不统一 会造成乱码 我们需要把它统一修改成》:utf8
  2. 1.MySQL里的my-default.ini是 windows下MySQL默认的配置文件
  3. 2.拷贝文件并重新命名为my.ini
  4. 3.添加字符编码相关的配置
  5.    [mysqld]
  6.                 character-set-server=utf8
  7.                 collation-server=utf8_general_ci
  8.    [client]
  9.                 default-character-set=utf8
  10.    [mysql]
  11.                 default-character-set=utf8  
  12. ps:由于配置文件涉及到了mysql的配置修改 需要重启服务端才可以生效
复制代码
相关配置:

直接mysql登录:

查看修改之后的配置:

存储引擎
  1. # 存储引擎就是针对相同的数据采取不同的策略
  2. 1.MYISAM :
  3.           MySQL5.5之前版本默认的存储引擎
  4.                   特点是:存取数据的速度快 但是功能较少 安全性较低
  5. 2:INNODB:
  6.           MySQL5.5之后版本默认的存储引擎
  7.                   特点是:存取数据的速度没有myisam快,但是支持事务,行锁,外键等诸多功能 安全性较高
  8.                   
  9. 3:memory:
  10.           基于内存的存储引擎,存取数据极快,但是断电立刻丢失数据
  11. 4:blackhole:
  12.           黑洞,任何写进去的数据都会立刻丢失 类似于垃圾站
  13. ps:MySQL对于大小写不敏感 可以任意写
复制代码
引擎区别
  1. # 先创建表 分别用不同的引擎
  2. create table t1(id int) engine=myisam
  3. create table t2(id int) engine=innodb
  4. create table t3(id int) engine=memory
  5. create table t4(id int) engine=blackhole
  6. insert into t1 values(1);
  7. insert into t2 values(2);
  8. insert into t3 values(3);
  9. insert into t4 values(4);
  10. ------------
  11. myisam .frm 表结构
  12.        .MYD 表数据
  13.            .MYI 表索引(加快数据查询)
  14. innodb .frm 表结构
  15.        .ibd 表数据,表索引(加快数据查询)
  16. memory .frm 表结构   (重新启动MySQLt3的数据就没有了)
  17. blackhole .frm 表结构
复制代码

创建表的完整语法
  1. create table 表名(
  2.     字段名1 字段类型(数字) 约束条件,
  3.     字段名2 字段类型(数字) 约束条件,
  4.     字段名3 字段类型(数字) 约束条件
  5. )engine=存储引擎
  6. 1.字段名和字段类型是必须的(至少写一个)
  7. 2.数字约束条件是可选的
  8. 3.约束条件可以写多个 空格隔开即可
  9. 4.最后一个字段的结尾千万不能加逗号
复制代码
数字的含义
  1. char(4) 括号里的数字是用来限制数据的长度的
  2. int(4)整型后面的数字是用来展示数据的长度的
  3. create table s1(id int(3) zerofill);
  4. insert into s1 values(1),(12);
  5. 总结:涉及到整型字段的定义 类型后面不需要加括号加数字 除非有固定业务需求
复制代码

字段类型

整型
  1. 1.tinyint    1bytes
  2. 2.smallint   2bytes
  3. 3.int        4bytes
  4. 4.bigint     8bytes
  5. 1.验证整型是否自带负号
  6. create table a1(id tinyint);
  7. inster into a1 values(-129),(256);
  8. 上述所有的整型类型默认都会自带负号
  9. 2.自定义移除符号
  10. create table a2(id tinyint unsigned)
  11. insert into a2 values(-129),(256);
  12. usigned 是约束条件之一 意思是不需要负号
  13. ps:由于给MySQL配置了属性sql_mode=STRICT_TRANS_TABLES 以上方法超出范围都无法执行
复制代码
浮点型

[code]1.float 2.double3.decimal# 三者都可以存储浮点型数据 但是各自的精确度不一致float(300,90) # 第一个数表示总共有多少位数 第二位数表示小数占多少位double(300,90)decimal(300,90)验证精确度问题create table a3(id float(255,30));create table a4(id double(255,30));create table a5(id decimal(255,30));insert into a3 values(1.11111111111);insert into a4 values(1.11111111111);insert into a5 values(1.11111111111);总结:float

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

水军大提督

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表