创建表
类别 | 详细解释 |
---|---|
基本语法 | create table 表名(字段名1 字段类型,….字段名n 字段类型n); |
示例 | create table user(username varchar(20),password varchar(32)); |
示例说明 | 创建一个表名叫user的表,第一个字段为username、表的字段类型为varchar长度为32个长度。第二个字段为password,类型也为varchar,长度也为32个长度。 |
注意:
- 为了更好的让大家入门,数据类型暂时不在我们这一章的讲解范围。害怕大家顾此失彼。快速学习数据库的管理和操作语句非常的重要,数据类型、字段、字符集、引擎都属于了解的知识点。
- . 字段类型大家现在只需要学会int,代表整型。float,代表浮点。char和varchar代表字符串即可。
- 我们可以在类型后接上长度如:varchar(20)。
其他示例:
mysql> create table emp(ename varchar(10),hiredate date,sal float(10,2),deptno int(2));Query OK, 0 rows affected (0.63 sec)
mysql> create table dept( deptno int(4), deptname varchar(20));Query OK, 0 rows affected (0.12 sec)查看表字段结构信息
类别 | 详细解示 |
---|---|
基本语法 | desc 表名; |
示例 | desc emp |
示例说明 | 查看emp表的表结构 |
操作显示如下:
mysql> desc emp;+—————+———————-+———+——-+————-+———-+| Field | Type | Null | Key | Default | Extra |+—————+———————-+———+——-+————-+———-+| ename | varchar(10) | YES | | NULL | || hiredate | date | YES | | NULL | || sal | decimal(10,2) | YES | | NULL | || deptno | int(2) | YES | | NULL | |+—————+———————-+———+——-+————-+———-+4 rows in set (0.39 sec)查看表的创建SQL语句查看表创建语句
类别 | 详细解示 |
---|---|
基本语法 | show create table 表名 \G; |
示例 | show create table emp \G; |
示例说明 | 查看表emp的创建语句 |
执行完整示例:
mysql> show create table emp \G;Table: empCreate Table: CREATE TABLE emp (ename varchar(10) DEFAULT NULL,hiredate date DEFAULT NULL,sal decimal(10,2) DEFAULT NULL,deptno int(2) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=utf8;1 row in set (0.00 sec)ERROR:No query specified
上面表的创建 SQL 语句中,除了可以看到表定义以外,还可以看到表的 engine(存储引擎) 和 charset(字符集)等信息。“\G”选项的含义是使得记录能够按照字段竖着排列,对于内 容比较长的记录更易于显示。
删除表
类别 | 详细解示 |
---|---|
基本语法 | drop table 表名; |
示例 | drop table emp; |
示例说明 | 删除表emp |
mysql> drop table emp;Query OK, 0 rows affected (0.34 sec)
注:删除表。表和数据均会丢失,请勿必删除重要表之前备份数据。
指定表引擎和字符集
在创建表最后,我们常用MyISAM或者InnoDB引擎。在指定引擎时,我们可以使用:
ENGINE=InnoDB
指定表默认字符集:
DEFAULT CHARSET=utf8
效果如下:
CREATE TABLE emp (useraname varchar(10) DEFAULT NULL,password date DEFAULT NULL,)ENGINE=InnoDB DEFAULT CHARSET=utf8;