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;
相关推荐
SirLancelot11 分钟前
AI大模型-基本介绍(一)RAG、向量、向量数据库
数据库·人工智能·ai·向量·向量数据库·rag
李慕婉学姐7 分钟前
Springboot面向电商的仓库管理系统05uc4267(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
imbackneverdie11 分钟前
AI工具如何重塑综述写作新体验
数据库·人工智能·考研·自然语言处理·aigc·论文·ai写作
千寻技术帮38 分钟前
10379_基于SSM的校园跑腿服务平台
mysql·微信小程序·校园跑腿·ssm
Warren9843 分钟前
datagrip新建oracle连接教程
数据库·windows·云原生·oracle·容器·kubernetes·django
焦糖玛奇朵婷44 分钟前
扭蛋机小程序:线上扭蛋机模式发展新形势[特殊字符]
大数据·数据库·程序人生·小程序·软件需求
YMatrix 官方技术社区1 小时前
YMatrix 高可用详解:3 种镜像策略在节点宕机时表现有何不同?
运维·数据库·数据仓库·ai·数据库开发·数据库架构·ymatrix
嘟嘟w1 小时前
SQL注入是什么
数据库·sql·oracle
摇滚侠1 小时前
Redis 零基础到进阶,Redis 主从复制,笔记55-62
数据库·redis·笔记
surtr11 小时前
数据库基础(数据库原理和应用)
数据库·sql·mysql·oracle·database