前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL - 简单笔记

MySQL - 简单笔记

作者头像
kenvie
发布2022-01-20 15:04:20
2800
发布2022-01-20 15:04:20
举报
文章被收录于专栏:kenviekenvie

创建数据库

代码语言:javascript
复制
create database if not exists mydb;

查看mySQL服务器中所有数据库

代码语言:javascript
复制
show databases;
示例:
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| keai               |
| kenvie             |
| mydb               |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
7 rows in set (0.00 sec)

创建表并设置字符格式为utf8

代码语言:javascript
复制
use mydb;
#create table 表名 (第一个字段 数据类型 字段属性);
create table kenvie (id int comment '编号',name varchar(32) comment '商品名称',price int comment '商品价格',des varchar(255) comment '商品描述')character set utf8;

查看数据表

代码语言:javascript
复制
#查看全部数据表
show tables;
示例:
mysql> show tables;
+----------------+
| Tables_in_mydb |
+----------------+
| kenvie         |
+----------------+
1 row in set (0.01 sec)

#查看名称中带有ken的数据表
show tables like '%ken%';
示例:
mysql> show tables like '%ken%';
+------------------------+
| Tables_in_mydb (%ken%) |
+------------------------+
| kenvie                 |
+------------------------+
1 row in set (0.00 sec)

修改数据表名称

代码语言:javascript
复制
#rename table 旧表名 to 新表名;
rename table keaicool to keai;

#alter table 旧表名 rename to 新表名;
alter table keaicool rename to keai;

在表中添加数据

代码语言:javascript
复制
#添加一行数据
#INSERT INTO 表名 VALUES ('第一个字段','第二个字段','第三个字段','第四个字段');
INSERT INTO kenvie VALUES ('1','华硕','7999','坚如磐石');

#添加部分数据
#insert into 表名 (字段名,字段名)values (数据,数据);
insert into kenvie (id,name) values ('2','华为');
#insert into 表名 set 字段名=数据,字段名=数据;
insert into kenvie set id=3,name='联想';

#添加多行数据
insert into 表名 values ('第一个字段','第二个字段','第三个字段','第四个字段'),('第一个字段','第二个字段','第三个字段','第四个字段');
insert into kenvie values (4,'游匣','7888','不知道1'),(5,'联想','8399','');

查看数据表结构详细信息

代码语言:javascript
复制
show full columns from kenvie;
示例:
mysql> show full columns from kenvie;
+-------+--------------+--------------------+------+-----+---------+-------+---------------------------------+----------+
| Field | Type         | Collation          | Null | Key | Default | Extra | Privileges                      | Comment  |
+-------+--------------+--------------------+------+-----+---------+-------+---------------------------------+----------+
| id    | int          | NULL               | YES  |     | NULL    |       | select,insert,update,references | 编号     |
| name  | varchar(32)  | utf8mb4_0900_ai_ci | YES  |     | NULL    |       | select,insert,update,references | 商品名称 |
| price | int          | NULL               | YES  |     | NULL    |       | select,insert,update,references | 商品价格 |
| des   | varchar(255) | utf8mb4_0900_ai_ci | YES  |     | NULL    |       | select,insert,update,references | 商品描述 |
+-------+--------------+--------------------+------+-----+---------+-------+---------------------------------+----------+
4 rows in set (0.00 sec)

查看数据表字段结构

代码语言:javascript
复制
#desc 表名;
DESC kenvie;
示例:
mysql> desc kenvie;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| id    | int          | YES  |     | NULL    |       |
| name  | varchar(32)  | YES  |     | NULL    |       |
| price | int          | YES  |     | NULL    |       |
| des   | varchar(255) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
4 rows in set (0.00 sec)

修改字段结构

代码语言:javascript
复制
#修改字段名
#alter table 表名 change 旧字段名 新字段名 字段类型;
alter table kenvie change price pri int;

#修改字段类型
#alter table 表名 modify 字段名 新字段类型;
alter table kenvie modify pri varchar(8);

新增字段并指定位置

代码语言:javascript
复制
#alter table 表名 add 新字段名 字段名 after 字段名;
alter table kenvie add num int after name;

删除字段

代码语言:javascript
复制
#alter table 数据库名 drop 字段名;
alter table kenvie drop num;

修改字段位置

代码语言:javascript
复制
#alter table 表名 modify 字段名 字段类型 after 字段名;  --first
alter table kenvie modify pri varchar(8) after des;

查看表中数据

代码语言:javascript
复制
#查看表中全部数据
#select 字段 from 表名;
select * from kenvie;
示例:
mysql> select * from kenvie;
+------+------+-------+----------+
| id   | name | price | des      |
+------+------+-------+----------+
|    1 | 华硕 |  7999 | 坚如磐石 |
|    2 | 华为 |  NULL | NULL     |
|    3 | 联想 |  NULL | NULL     |
|    4 | 游匣 |  7888 | 不知道1  |
|    5 | 联想 |  8399 |          |
+------+------+-------+----------+
5 rows in set (0.00 sec)

#查看表中部分数据
#select 字段 from 表名 where 字段名=数据;
select * from kenvie where id=1;
示例:
mysql> select * from kenvie where id=1;
+------+------+-------+----------+
| id   | name | price | des      |
+------+------+-------+----------+
|    1 | 华硕 |  7999 | 坚如磐石 |
+------+------+-------+----------+
1 row in set (0.00 sec)

修改表中数据

代码语言:javascript
复制
#将第一行的价格修改为8888
update keai set price=8888 where id=1;
#删除第一行
delete from keai where id=3;

让设置字段中文

代码语言:javascript
复制
#select 字段名 '替换中文',字段名 '替换中文' from 数据表名;
select name '姓名',age '年龄' from my_yueshu; 

约束

默认约束

代码语言:javascript
复制
#设置默认值

create table my_yueshu (name varchar (32),age int unsigned default 18);

#alter table 数据表名 modify 字段名 字段类型 unsigned default 默认值;
alter table my_yueshu modify age int unsigned default 18;

#取消默认值
#alter table 数据表名 modify 字段名 字段类型 unsigned;
alter table my_yueshu modify age int unsigned;

非空约束

代码语言:javascript
复制
#not null 不能为空
create table not_null(n1 int,n2 int not null,n3 int not null default 18);

唯一约束

代码语言:javascript
复制
#创建唯一性数据表uni
create table uni(id int unsigned unique,username varchar(50));
#插入一行数据
insert into uni (id, username)values (1,'王');

#再插入一个id同样为1的一行数据
insert into uni (id, username)values (1,'李');
#这时就报错,因为id这个字段有唯一性,1用过以后就不能用了

#把1改成2再插入试试
insert into uni (id, username)values (2,'李');
#这时就插入成功

主键约束

代码语言:javascript
复制
create table kenvie (id int primary key ,name varchar(32));
desc kenvie;
insert into kenvie values (1,'牛');  //填入一行数据
insert into kenvie values (1,'马');  //再填入1就报错
insert into kenvie values (null,'马');  //填入空也报错
alter table kenvie drop  primary key ;  //删除主键约束
alter table kenvie add primary key(id) ;  //添加主键约束
alter table kenvie modify  id int;   //删除非空约束

自动增长

代码语言:javascript
复制
create table my_auto (id int primary key auto_increment,name varchar(32));
desc my_auto;
insert into my_auto (name) values  ('kenvie');   //给name字段填入kenvie
insert into my_auto values (null,'keai');   //第二行id字段填入null,name字段填入keai
insert into my_auto values (6,'keaiai');   //第三行id字段填入6,name字段填入keaiai
insert into my_auto values (0,'ddd');    //第四行id字段填入0,mysql会忽略该值,使用增长值,所以这行插入结果是7
alter table my_auto  AUTO_INCREMENT = 10; #修改自动增长值下次为10
insert into my_auto (name) values  ('keaiiii');  #10,keaiiii
alter table my_auto modify  id int;   #删除自动增长
alter table my_auto modify  id int auto_increment;   #添加自动增长

版权属于:kenvie

本文链接:https://kenvie.com/70

商业转载请联系作者获得授权,非商业转载请注明出处。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021 年 03 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建数据库
  • 查看mySQL服务器中所有数据库
  • 创建表并设置字符格式为utf8
  • 查看数据表
  • 修改数据表名称
  • 在表中添加数据
  • 查看数据表结构详细信息
  • 查看数据表字段结构
  • 修改字段结构
  • 新增字段并指定位置
  • 删除字段
  • 修改字段位置
  • 查看表中数据
  • 约束
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档