表操作
表是数据库存储数据的基本单位,由若干个字段组成,主要用来存储数据记录。
使用编辑器编辑指令
mysql> edit mysql> \e
在mysql客户端内执行系统命令
mysql> system ls mysql> \! ls
创建表 表名:school.student1
字段名称 | id | name | sex | age |
---|---|---|---|---|
记录 | 1 | tom | male | 23 |
记录 | 2 | jack | male | 21 |
记录 | 3 | alice | female | 19 |
语法
mysql > create table 表名( 字段名1 类型[(宽度) 约束条件], 字段名2 类型[(宽度) 约束条件], 字段名3 类型[(宽度) 约束条件] )[存储引擎 字符集]; 在同一张表中,字段名是不能相同 宽度和约束条件可选 字段名和类型是必须的
mysql> CREATE DATABASE school mysql> use school; mysql> create table student1( -> id int, -> name varchar(50), -> sex enum('m','f'), -> age int -> ); Query OK, 0 rows affected (0.03 sec)
查看表(当前所在库)
mysql> show tables; mysql> desc emp; mysql> show create table emp; mysql> show table status like 'emp' \G
修改表名称
mysql> rename table emp to abc; mysql> alter table abc rename emp;
查看表内容(后面单独讲表查询操作)
mysql> select * from student1; //查询表中所有字段的值 mysql> select name,age from student1; //查询表中指定字段的值
字段操作
添加新字段 mysql> alter table t1 add math int(10); mysql> alter table t1 add (chinese int(10),english int(10)); 修改字段数据类型、修饰符 mysql> alter table t1 modify chinese int(5) not null; 修改名称、数据类型、修饰符 mysql> alter table t1 change chinese china int(6); first after mysql> alter table t1 change english en int(6) after id; mysql> alter table t1 modify en int(6) first; 删除字段 mysql> alter table t1 drop en;
记录操作
插入数据(添加记录) 字符串必须引号引起来 mysql> insert into t1(id,name,math,china) values(1,"wing",80,90); mysql> insert into t1(id,name,math,china) values(2,"king",70,100),(3,"tom",50,70); mysql> insert into t1 values(4,"xiaosan",50,100); mysql> insert into t1(id,math) values(5,70); mysql> insert into t1 set id=6,math=65; 更新记录 mysql> update t1 set name="lili" where id=5; 删除记录 mysql> delete from t1 where id=6; mysql> delete from t1; //删除所有记录
表复制:key不会被复制: 主键、外键和索引
复制一张表 mysql> create table t10(select * from t3); mysql> create table t10(select id,name from t3); 复制表结构 mysql> create table t4(select * from t3 where 5=4); mysql> create table t4(select id,name from t3 where 5=4); 复制记录 mysql> insert into t3 select * from t10 where id=9;
删除表
删除单张表 mysql> drop table t1; 删除多张表 mysql> drop table t1,t2,t3;
单表查询
测试表设计
表名称:
company.employee5
表结构: