Mysql 的增删改查

数据库操作

CRUD(建查改删)

数据库的CRUD

1.C(Creat) 建库

建库

	create database 数据库名称;

当数据库存在时会报错,所以避免此状况出现我们加上条件语句

	create database if not exists 要创建的数据库名字

没有指定的字符集的话默认跟配置有关
要制定字符集需要用

create database 数据库名称 character set 字符集名称(utf8,gdk)
2.R(Retrieve)查库

** 查询所有数据库的名称:**

	show databases;

查询当前数据库所用字符集

	show create database 所查数据库;

查询当前使用的库

	select database();

切换数据库

	use 数据库名字;
3.U(Update)改库

修改数据库的字符集

	alter database 数据库名称 character set 字符集名称;
4.D(Delete)删库

删除数据库

drop database 数据库名称;

如果不存在会报错所以加上判断语句

drop database if exists 数据库名称;

数据表的CRUD

1.C(Creat) 建表

建表的时候记得加逗号,除了最后一行不用加

create table 表名(
	数据名称(列名)1 数据类型1,
	数据名称(列名)2 数据类型2,
	...
	数据名称(列名)n 数据类型n,
);

在创建表的时候可以加入各种约束
比如

 	 unique 数据独一,不能出现一样的
     not null 不能使数据为空
     primary key 设置主键
     primary key( 列名1,列名2,...) 设置联合主键
     auto_increment 自动增长,如果设数据为空则根据上一个数据值+1
     foreign key (当前表中被约束的外键列) references 关联的主表名称(主表关联的列名)设置外键
     default 设置默认值
     ...

复制表建立新表

create table 新建表 like 被复制的表
2.R(Retrieve)查表

查看表的数据

	查看指定的字段
		select 查找所含数据(字段)1,数据(字段)2... ,数据n from 表名	例如 select id,name from student
	查看所含所有数据
		select * from 表名
	查看去重后的数据	只有当所选的字段全部相同时才会去重
		select distinct 字段1,字段2...字段n	from 表名

还有很多的查询输出DQL这里就简短写几个

计算列数据
	select 所查数据1,数据2... ,数据n,数据1+数据2+... as 别名 from 表名
	as(可以用来起别名)也可以空格加上别名省略as
排序查询
	select 所查数据1,数据2... ,数据n from 表名 order by 进行排序的字段1,字段2 [排序方式]
	默认升序排列 ,也可以在排序方式写 ASC: 升序排列 DESC: 降序排列
	列如
	select * from student order by score DESC  (降序排列)
条件查询
	select 所查数据1,数据2... ,数据n from 表名 where 字段 比较,逻辑运算符 条件;
	例如	select * from student where score>90;
			select * from student where score>60 and score<=90;
模糊查询
	LIKE
	  占位符   1. _:单个任意字符
	  		   2.% :多个任意字符
	  例如查询两个字的名字且姓名为朱的数据
	  	select * from student where name like '朱_'
	  	  查询开头为朱的名字 后面多少字什么字无所谓
	  	select * from student where name like '朱%'
	  	  查询名字中有凯的名字 
	  	 select * from student where name like '%凯%'  
3.U(Update)改表

修改表的名字

	alter table 表名 rename to 新表名;

添加新的一列字段

添加到最后
	alter table 表名 add 新列名 数据类型
添加到指定字段后
	alter table 表名 add 新列名 数据类型 after 字段名
添加到最开始的一列
	alter table 表名 add 新列名 数据类型 first

删除字段

	alter table 表名 drop 列名

修改字段信息

改名字,且改数据类型:
	alter table 表名 change 要修改的列名 修改后的名称 修改后的数据类型
只改类型: 
	alter table 表名 modify 要修改的目标列名 修改后的数据类型

添加数据

	insert	into 表名 (列名1,列名2,...,列名n) values(数值1,数值2,数值3,..,数值n)
	也可以省略列名不过需要写所有的values
	insert	into 表名 values(数值1,数值2,数值3,..,数值n)

修改字段数据

	update 表名 set 列名1 =数据1 ,列名2=数据2,... where 条件
	例如	update student set score =100 where name ='张三'
4.D(Delete)删表

删表

直接删表
	drop table 表名
只是删除表中的数据 表依旧存在
	truncate table 表名
delete table 表名(这是一条一条删除 ,效率很低不建议使用)

删表里的数据

	delete from 表名 where 条件
	例如 delete from student where name='张三';

简短的记录一下,有很多需要完善,加油

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值