【MySQL】库和表的操作

文章目录

库操作

创建数据库

cpp 复制代码
create database name

创建库的本质其实是在一个路径下创建一个目录。
MySQL

目录

删除数据库

cpp 复制代码
drop database name

删除数据库本质其实是删除一个路径下的一个目录。
MySQL

目录

字符集和校验规则

  1. 数据库编码集:数据库未来存储的数据
  2. 数据库校验集:支持数据库进行对应的字段比较,使用同样的编码,本质是一种读取数据库中的数据采用的编码格式。

在创建数据库的时候后面可以跟上选项,采用我们指定的字符集和校验规则,但是如果不加选项就会使用配置文件中默认的字符集和校验规则。

指定字符集

cpp 复制代码
create database db2 charset=utf8;

指定校验规则

cpp 复制代码
create database db3 charset=utf8 collate utf8_general_ci;

查看默认字符集和默认校验规则

cpp 复制代码
show variables like 'character_set_database';
cpp 复制代码
show variables like 'collation_database';


不同校验规则之间产生的影响

我们创建一个校验规则是utf8_bin的数据库,创建一个校验规则是utf8_general_ci的数据库,分别在两个数据库当中创建表结构。

创建表结构:

创建表结构并且在表结构中插入数据,我们查看表中的a:

可以看见在utf8_bin这个校验规则中是区分大小写的,当我们查看a时只出现了a,我们用相同的做法在表2中,查看a:

可以看见当我们查看a的时候,A也跟着出来了,所以可以发现utf8_general_ci对应的校验规则是不区分大小写的。

查看数据库

cpp 复制代码
show databases;


显示创建语句

cpp 复制代码
show create database 数据库名;


显示当前所在数据库

cpp 复制代码
select database();

修改数据库

cpp 复制代码
ALTER DATABASE db_name

对数据库的修改主要指的是修改数据库的字符集或者校验规则

修改数据的字符集

表操作

创建表结构

cpp 复制代码
create table users (
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment '生日'
) character set utf8 engine MyISAM;

在创建表时,后面可以跟上我们指定的engine和指定的字符集。

不同引擎对应的创建的表的文件个数是不同的。

查看表结构

cpp 复制代码
desc name

修改表结构

cpp 复制代码
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);

增加列

可以看见我们这里成功增加了一列。
删除列

修改列名称

修改列名称时必须加上对应的属性

查看使用当前数据库的用户

cpp 复制代码
show processlist

总结

本篇文章介绍了数据库和表的常见操作,包括创建、修改和查看数据库及表结构。此外,还涉及字符集和校验规则的管理,以及如何查看当前数据库的使用用户。通过这些内容,读者可以掌握数据库基础操作,提高数据库管理能力。在实际应用中,合理规划数据库结构、使用合适的字符集和权限管理,能够有效提升系统的稳定性与安全性。

相关推荐
一只专注api接口开发的技术猿8 小时前
如何处理淘宝 API 的请求限流与数据缓存策略
java·大数据·开发语言·数据库·spring
_oP_i8 小时前
oracle 免费安装版本
数据库·oracle
Excel工作圈8 小时前
凭证助手一键匹配已勾选抵扣发票与全量发票明细
数据库·excel
齐鲁大虾8 小时前
SQL Server 和 MySQL的区别
数据库·mysql
川石课堂软件测试8 小时前
Android和iOS APP平台测试的区别
android·数据库·ios·oracle·单元测试·测试用例·cocoa
Codeking__9 小时前
Redis的value类型介绍——list
数据库·redis·缓存
香气袭人知骤暖9 小时前
MVCC为什么不能完全解决幻读问题
数据库·oracle
东方巴黎~Sunsiny9 小时前
mysql大表空间整理注意点
数据库·mysql
難釋懷9 小时前
Redis简单介绍
数据库·redis·缓存
lifejump9 小时前
Pikachu | SQL-inject
数据库·sql