MySQL-----表的操作

1.创建表

语法:

复制代码
CREATE TABLE table_name (
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;

说明:
field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

----创建案例
mysql> create table if not exists user(
    -> id int primary key,
    -> name varchar(10) comment "这是姓名",
    -> pssword varchar(100) comment "这是密码",
    -> bithyday date comment "生日")character set utf8mb4 ENGINE InnoDB ;
Query OK, 0 rows affected (0.19 sec)

2.查看表结构

复制代码
desc 表名;

mysql> desc user;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int          | NO   | PRI | NULL    |       |
| name     | varchar(10)  | YES  |     | NULL    |       |
| pssword  | varchar(100) | YES  |     | NULL    |       |
| bithyday | date         | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

3.修改表

复制代码
语法:
ALTER TABLE  tablename ADD (column datatype [DEFAULT expr][,column 
datatype]...);

 ALTER TABLE  tablename MODIfy (column datatype [DEFAULT expr][,column 
datatype]...);

 ALTER TABLE  tablename DROP (column);

--在user表添加二条记录

复制代码
mysql> insert into user(id,name,pssword,bithyday) values(1,"熊明","213adad","1999-1-2")
Query OK, 1 row affected (0.00 sec)
mysql> insert into user(id,name,pssword,bithyday) values(2,"熊哈","24234fsdsgds","1999--1-3");
Query OK, 1 row affected (0.01 sec)

--查看插入数据
mysql> select * from user;
+----+--------+--------------+------------+
| id | name   | pssword      | bithyday   |
+----+--------+--------------+------------+
|  1 | 熊明   | 213adad      | 1999-01-02 |
|  2 | 熊哈   | 24234fsdsgds | 1999-01-03 |
+----+--------+--------------+------------+
2 rows in set (0.00 sec)

修改name,将其长度改成60

复制代码
mysql> alter table  user modify name varchar(666);
Query OK, 2 rows affected (0.38 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int          | NO   | PRI | NULL    |       |
| name     | varchar(666) | YES  |     | NULL    |       |
| pssword  | varchar(100) | YES  |     | NULL    |       |
| bithyday | date         | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

在user表添加一个字段,用于保存图片路径

复制代码
mysql> alter table user add assert varchar(99) comment"这是路劲";
Query OK, 0 rows affected (0.07 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int          | NO   | PRI | NULL    |       |
| name     | varchar(666) | YES  |     | NULL    |       |
| pssword  | varchar(100) | YES  |     | NULL    |       |
| bithyday | date         | YES  |     | NULL    |       |
| assert   | varchar(99)  | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

--查看增加字段对数据有没有影响
mysql> select * from user;
+----+--------+--------------+------------+--------+
| id | name   | pssword      | bithyday   | assert |
+----+--------+--------------+------------+--------+
|  1 | 熊明   | 213adad      | 1999-01-02 | NULL   |
|  2 | 熊哈   | 24234fsdsgds | 1999-01-03 | NULL   |
+----+--------+--------------+------------+--------+
2 rows in set (0.00 sec)

删除password列

注意:删除字段一定要小心,删除字段及其对应的列数据都没了

复制代码
mysql> alter table user drop pssword;
Query OK, 0 rows affected (0.06 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc user;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int          | NO   | PRI | NULL    |       |
| name     | varchar(666) | YES  |     | NULL    |       |
| bithyday | date         | YES  |     | NULL    |       |
| assert   | varchar(99)  | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

修改表名为employee

复制代码
mysql> alter table user rename employee;
// alter table user rename to employee;  to可以省略
Query OK, 0 rows affected (0.15 sec)

mysql> desc employee;
mysql> select * from employee;
+----+--------+------------+--------+
| id | name   | bithyday   | assert |
+----+--------+------------+--------+
|  1 | 熊明   | 1999-01-02 | NULL   |
|  2 | 熊哈   | 1999-01-03 | NULL   |
+----+--------+------------+--------+
2 rows in set (0.00 sec)

将name列修改为xingming

复制代码
mysql> alter table employee change name xinming varchar(666);
Query OK, 0 rows affected (0.08 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc employee;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int          | NO   | PRI | NULL    |       |
| xinming  | varchar(666) | YES  |     | NULL    |       |
| bithyday | date         | YES  |     | NULL    |       |
| assert   | varchar(99)  | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

4.删除表

语法:

复制代码
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

例子:

复制代码
drop table employee;
相关推荐
工程师老罗4 小时前
如何在Android工程中配置NDK版本
android
陌上丨5 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
AI_56785 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
ccecw5 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH30735 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
数据知道5 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)
数据库·postgresql
麦聪聊数据7 小时前
Web 原生架构如何重塑企业级数据库协作流?
数据库·sql·低代码·架构
未来之窗软件服务7 小时前
数据库优化提速(四)新加坡房产系统开发数据库表结构—仙盟创梦IDE
数据库·数据库优化·计算机软考
Libraeking7 小时前
破壁行动:在旧项目中丝滑嵌入 Compose(混合开发实战)
android·经验分享·android jetpack
市场部需要一个软件开发岗位8 小时前
JAVA开发常见安全问题:Cookie 中明文存储用户名、密码
android·java·安全