Mysql DBA 高级运维学习之路-mysql建表语句及表知识

MySQL建表与字段类型详解
本文详细介绍了MySQL中创建表的基本命令语法及实例,并解释了如何查看表结构。此外,还介绍了MySQL中的主要字段类型,包括INT型、CHAR型和VARCHAR型。

1.创建表

1.1 建表的基本命令语法

create table<表名>(
<字段名1><类型1>,
………
<字段名n><类型n>
)

1.2 创建student表

(1)在linzhongniao库中创建student表

mysql> use linzhongniao
Database changed
mysql> select database();
 +--------------+
| database()   |
 +--------------+
| linzhongniao |
 +--------------+
1 row in set (0.00 sec)

mysql> create table student(
 -> id int(4) not null,
 -> name char(20) not null,
 -> age tinyint(2) not null default '0',
 -> dept varchar(16) default null
 -> );
Query OK, 0 rows affected (0.15 sec)

(2)查看建表语句

mysql> show create table student\G
 *************************** 1. row ***************************
   Table: student
Create Table: CREATE TABLE `student` (
  `id` int(4) NOT NULL,
  `name` char(20) NOT NULL,
  `age` tinyint(2) NOT NULL DEFAULT '0',
  `dept` varchar(16) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

需要注意的是mysql5.1和mysql5.5环境的默认建表语句中的引擎不同,如果希望控制表的引擎,就要在建表语句里显示指定的引擎。

1.3查看表结构

查看表结构用desc命令或者用show columns from 表名的方式查询

mysql> desc student;
 +-------+-------------+------+-----+---------+-------+
| Field | Type       | Null | Key | Default | Extra |
 +-------+-------------+------+-----+---------+-------+
| id    | int(4)     | NO   |       | NULL|   |
| name  | char(20)   | NO   |       | NULL|   |
| age   | tinyint(2) | NO   |       | 0   |   |
| dept  | varchar(16)| YES  |       | NULL|   |
 +-------+-------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
mysql> show columns from student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(4)      | NO   |     | NULL|   |
| name  | char(20)    | NO   |     | NULL|   |
| age   | tinyint(2)  | NO   |     | 0   |   |
| dept  | varchar(16) | YES  |     | NULL|   |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

2.mysql表的字段类型

我们可以参考mysql参考手册学习

(1)数字类型

Mysql DBA 高级运维学习之路-mysql建表语句及表知识

(1)日期和时间类型(DATE日期类型:支持范围是1000-01-01到9999-12-31。Mysql以YYYY-MM-DD格式来显示DATE值,但允许使用字符串或数字把值赋给DATE列)

Mysql DBA 高级运维学习之路-mysql建表语句及表知识

(3)串类型

Mysql DBA 高级运维学习之路-mysql建表语句及表知识

最重要的是下面三个类型

1.INT(M)型:正常大小整数类型。

2.CHAR(M)型:定长字符串类型,当存储时总是用空格填满右边的指定的长度。

3.VARCHAR型:变长字符串类型。

有关mysql字段类型详细内容,请参考mysql手册。

转载于:https://blog.51cto.com/10642812/2065742

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值