Mysql数据表操作
创建表
类别 | 详细解示 |
---|---|
基本语法 | 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: emp
CREATE 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;