MySQL数据库--基本操作

数据库的基本操作

数据库是数据存储的最外层(最大单元)

创建数据库

基本语法:create database 数据库名字【库选项】

库选项:数据库的相关属性

字符集:charset  字符集,代表当前数据库下的所有表存储的数据默认指定的字符集(如果当前不指定,那么采用DBMS默认的)

校对集:collate  校对集

create database 数据库名字 charset 字符集名称;

 

显示数据库

每当用户通过SQL指令创建一个数据库,那么系统就会产生一个对应的存储数据的文件夹(data)

其实,每个数据库文件下都有一个opt文件,保存的是对应的数据库选项。

显示全部

show databases;

显示部分

基本语法:show databases like '匹配模式';

_:匹配当前位置单个字符

%:匹配指定位置多个字符

获取以my开头的全部数据库:‘my%’;

获取以m开头,后面第一个字母不确定,最后为database的数据库:‘m_databas’;

获取以database结尾的数据库:‘%database’;

显示数据库创建语句

基本语法:show create database 数据库名字

 

选择数据库

为什么选择数据库?因为数据是存储到数据表,表存在数据库下。如果要操作数据,那么必须进入到对应的数据库才行。

基本语法:use 数据库名字;

 

修改数据库

修改数据库字符集(库选项):字符集和校对集

基本语法:alter database 数据库名字 charset = 字符集;

是否可以修改数据库名字?mysql5.5之前是可以修改的,5.5之后就不可以了。

一旦修改成功,那么对应的opt文件中就会有所改变。

【mysql8.0未发现opt文件,目前找不到原因,但通过show create datebase可查询到已经发生了改变】

 

删除数据库

基本语法:drop database 数据库名字;

删除虽简单,但是切记要做好安全操作,确保里面数据没有问题(重要)

删除数据库之后,对应的存储数据文件也被删除(opt文件也会被删除)。

 

数据表操作

创建数据表

普通创建表

基本语法:create table 表名(字段名 字段类型 [字段属性],字段名 字段类型[字段属性],........);

【表选项】

以上错误说明:表必须放到对应的数据库下,有两种方式可以将表挂入到指定的数据库下:

  1.  在数据表名字前面加上数据库名字,用“.”连接即可,数据库.数据表
  2. 在创建数据表之前先进入到某个具体的数据库即可,use 数据库名字;

 表选项:与数据库选项类似

engine:存储引擎,mysql提供的具体存储数据的方式,默认有一个innodb(5.5以前默认是myisam)

charset:字符集,只对当前自己表有效(级别比数据库高)

collate:校对集

复制已有表结构

从已经存在的表复制一份(只复制结构:如果表中有数据不复制)

基本语法:create table 表名 like 表名;//只要使用数据库.表名,就可以在任何数据库下访问其他数据库的表名

显示数据表

每当一张数据表创建,那么就会在对应的数据库下创建一些文件(与存储引擎有关)

【mysql8下的文件已经变成了.IBD文件,经过百度:MySQL8.0以后没有.frm了,元数据都存在系统表空间里。】

【注】这个结构文件来自于innodb存储引擎,innodb存储引擎所有的文件都存储在外部的ibdata文件。

显示所有表

基本语法:show tables;

匹配显示表

基本语法:show tables like ‘匹配模式’;

 

显示表结构

本质含义:显示表中所包含的字段信息(名字,类型,属性等)

describe表名

desc表名

show columns from 表名

 

修改表结构

修改表名:rename table 旧表名 to 新表名

修改表选项:alter table 表名 表选项 【=】新值

新增字段:alter table 表名 add 【column】 新字段名 列类型 【列属性】 【位置 first/after 字段名】

修改字段名:alter table 表名 change 旧字段名 新字段名 字段类型 【列属性】【新位置】

修改字段类型(属性):alter table 表名 modify 字段名 新类型 【新属性】【新位置】

删除字段:alter table 表名 drop 字段名

 

删除表结构

基础语法:drop table 表名【,表名2.......】,可以同时删除多个数据表

 

数据基础操作

插入操作

本质含义:将数据以SQL的形式存储到指定的数据表(字段)里面

基本语法:向表中指定字段插入数据

insert into 表名【(字段列表)】values(对应字段列表);

注意:

  1. 后面(values中)对应的值列表只需要与前面的字段列表相对应即可(不一定与表结构完全相等)
  2. 字段列表并不一定非要有所有的表中字段

insert into 表名 values(对应表结构);:向表中所有字段插入数据

查询操作

查询表中全部数据:select * from 表名;

查询表中部分字段:select 字段列表 from 表名;//字段列表有多个,使用‘,’隔开

简单条件查询数据,select 字段列表/* from 表名 where 字段名 = 值;

删除操作

基本语法:delete from 表名 【where  条件】;若没有where条件,则默认删除整个表

 

更新操作

更新:将数据进行修改(通常是修改部分字段数据)

基本语法:update 表名 set 字段名 = 新值【where 条件】;//如果没有where条件,所有表中对应的那个字段都会被修改。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值