数据库必备操作

数据库必备操作

创建表的完整语法

创建表的完整语法

# 长度和约束在某些情况下是可以省略的
- mysql>: create table 表名 (
	属性名1 类型(长度) 约束,
	...
	属性名n 类型(长度) 约束
) engine=引擎 default charset=utf8;

数据库表的引擎

引擎是建表的时候规定的,是提给表用的,而不是数据库

 - show  engines
  • 展示所有引擎
  • 引擎 innodb(默认)
    • 支持事事务,行级键,外键
  • 引擎 myisam
    • 查询效率要优于innodb,当不需要innodb的功能时,
      可以通过myisam来优化数据库,提高查询效率
  • 引擎 blackhole
    • 黑洞,存进表中的数据就像存进黑洞一样,不复存在
    • 无法进行数据的存储
  • 引擎 memory
    • 表结构是存储在硬盘上的,但是表数据是存储在内存中的,无法永久存储
  • 引擎.........

可以用引擎来实现数据库的优化

数据库的模式

安全模式

  • mysql 5.7 以后默认都是安全模式
  • sql_model=strict_trans_tables
  • 安全模式下,非安全模式下执行的sql语句,警告的都会报错

非安全模式

  • mysql 5.6

  • sql_model=no_engine_substitution

  • root权限下,临时设置为安全模式,
    服务重启后会被重置

    - set global sql_mode = "strict_trans_tables";
    
    
  • 在设置后,quit断开数据库连接后(服务器不重启)就会进入安全模式

查看当前数据库模式

- show  variables  like  "%sql_mode%"
posted @ 2019-09-23 21:37  ~李  阅读(139)  评论(0编辑  收藏  举报