深圳市金黑网络技术有限公司始终坚持以用户需求为导向,提供安全、稳定、高效的产品和服务!
签到 · 搜索导航 · 服务热线 · 微信/手机:17817817816

深圳网站建设

查看: 731|回复: 0

mysql教程表的操作之创建表,附命令代码

[复制链接]

UID
1
贡献
844
金币
1540
主题
520
在线时间
333 小时
注册时间
2022-1-15
最后登录
2024-11-12
QQ
发表于 2022-11-25 10:39:11 | 731 | 0 | 显示全部楼层 |阅读模式
mysql教程表的操作之创建表,附命令代码

代码如下:
先进入数据库
  1. mysql> create database data;
  2. Query OK, 1 row affected (0.00 sec)

  3. mysql> use data;
  4. Database changed
复制代码
创建表
语法:
  1. create table [if not exists] `表名`(
  2.     `字段名` 数据类型 [null|not null] [default] [auto_increment] [primary key] [comment],
  3.     `字段名 数据类型 …
  4. )[engine=存储引擎] [charset=字符编码]

  5. null|not null     是否为空
  6. default:          默认值
  7. auto_increment    自动增长,默认从1开始,每次递增1
  8. primary key       主键,主键的值不能重复,不能为空,每个表必须只能有一个主键
  9. comment:          备注
  10. engine            引擎决定了数据的存储和查找   myisam、innodb

  11. 脚下留心:表名和字段名如果用了关键字,要用反引号引起来。
复制代码
例题:
  1. -- 设置客户端和服务器通讯的编码
  2. mysql> set names gbk;  
  3. Query OK, 0 rows affected (0.00 sec)

  4. -- 创建简单的表
  5. mysql> create table stu1(
  6.     -> id int auto_increment primary key,
  7.     -> name varchar(20) not null
  8.     -> )engine=innodb charset=gbk;
  9. Query OK, 0 rows affected (0.11 sec)

  10. -- 创建复杂的表
  11. mysql> create table stu2(
  12.     -> id int auto_increment primary key comment '主键',
  13.     -> name varchar(20) not null comment '姓名',
  14.     -> `add` varchar(50) not null default '地址不详' comment '地址',
  15.     -> score int comment '成绩,可以为空'
  16.     -> )engine=myisam;
  17. Query OK, 0 rows affected (0.06 sec)
复制代码
小结:
1、如果不指定引擎,默认是innodb
2、如果不指定字符编码,默认和数据库编码一致
3、varchar(20) 表示长度是20个字符
数据表的文件
一个数据库对应一个文件夹一个表对应一个或多个文件引擎是myisam,一个表对应三个文件        .frm        :存储的是表结构        .myd        :存储的是表数据        .myi        :存储的表数据的索引引擎是innodb,一个表对应一个表结构文件,innodb的都有表的数据都保存在ibdata1文件中,如果数据量很大,会自动的创建ibdata2,ibdata3...
innodb和myisam的区别

引擎
myisam1、查询速度快2、容易产生碎片3、不能约束数据
innodb1、以前没有myisam查询速度快,现在已经提速了2、不产生碎片3、可以约束数据
脚下留心:推荐使用innodb。
楼主热帖

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

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