学习笔记(十四)——MySQL(CRUD)
常见的关系型数据库和非关系型都有那些?
关系型数据库:
Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL
非关系型数据库:
NoSql、Cloudant、MongoDb、redis、HBase
文章目录
- MySQL库操作
- MySQL表操作
- MySQL表数据操作
- 增 insert
- 查 select
- 改 update
- 删 delete
- 补充
- MySQL账户操作
- 拓展:关系数据库与非关系数据库区别
- 关系型数据库
- 非关系型数据库
MySQL库操作
*注意:必须先进入mysql才能进行后面的操作。
1、进入mysql
mysql -u用户名 -p密码 (用户名、密码设置下面会讲)注意:如果出现Access denied for user 'root' @'localhost' (using passwoed:YES)需要启动mysql服务:`server mysql start
2、显示所有的库
3、创建数据库
#方法一 create database 库名; #方法二 create database if not exists 库名;4、删除数据库
#方法一 drop database 库名; #方法二 drop database if exists 库名;5、进入数据库
use 库名MySQL表操作
*注意:下面的tbl均表示表名,tb表里有id和name两类型。
所有语句必须英文分号结尾。
1、显示所有的表
show tables;2、创建表:
#方法一 create tables tbl(id int,name varchar(20)); #方法二 create tables if not exists tbl(id int,name varchar(20));3、显示创建表的信息
show create table tbl;4、删除表
drop table tbl;5、查看表结构(描述的意思):
desc tbl;补充:
default: 默认约束
key :建立索引 能不用尽量别用
show create table tbl; :查看表结构
engine :引擎
drop table tbl; :删除表,能不删尽量不删
exit() :退出
show:显示
\c 取消
执行后出现:Query OK, 0 rows affected , 1 warning (0.00 sec)
意思是:查询OK, 0行受影响,1个警告(0.00秒)
MySQL表数据操作
*注意:下面的tbl均表示表名,tb表里有id和name两类型
所有语句必须英文分号结尾。
增 insert
1、指定字段插入
insert into tbl(id,name) values(1,'lisi'); insert into tbl(id) values(2);2、全字段插入
insert into tbl values(3,'lisi');3、多条数据插入
insert into tbl(id) values(4),(5); insert into tbl values(6,'lisi'),(7,'lisi');*注意:into 可加可不加
查 select
1、指定字段查询
select id from tbl; select name from tbl;2、全字段查询
select * from tbl;3、条件查询
select *from tbl where id=3; select name from tbl where id>3;改 update
1、修改所有的数据
update tbl set name='wangwu'; #不推荐2、修改多个字段的值
update tbl set id=10,name='lisi' where id=2 and name='lisi';注意:一般要写where条件,不然会修改表中全部数据
删 delete
1、删除表中满足条件的数据
delete from tbl where id=1;2、删除表中的所有数据
delete from tbl;注意:我们数据一般不会完全删除,只会标记一下,不在给你们显示。
补充
注意:所有语句必须英文分号结尾。
1、修改表名
alter table tbl rename to new_tb; show tables; # 已经改名字了2、改字段
alter table new_tb change column id new_id int;3、修改字段类型
alter table new_tb modify column name varchar(10);alter table new_tb add age int;MySQL账户操作
*注意:创建mysql账户,必须要先进入mysql,所有语句必须英文分号结尾。
1、创建用户
create user 'wwc'@'%' identified by 'wwc123';注意:这里用户名设置为:wwc ,密码设置为:wwc123
% :指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以使用通配符%。
2、赋予用户权限:
注意:
用户的操作权限,如select,insert,update等,如果要授予所的权限则使用all
*.*: 所有库,所有表。
3、立即生效:
4、查看当前用户:
select user();5、删除用户:
drop user 'wwc'@'localhost';6、 四种退出方式
#方法一 quit; #方法二 ctrl +z #方法三 \q #方法四 exit;拓展:关系数据库与非关系数据库区别
关系型数据库
1、什么是关系数据库
①关系型数据库,是指采用了关系模型来组织数据的数据库;
②关系型数据库的最大特点就是事务的一致性;
③简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。
2、关系型数据库的特性:原子,一致,隔离,持久。
3、关系型数据库的优点
①容易理解:二维表结构是非常贴近逻辑世界一个概念,关系模型相对网状、层次等其他模型来说更容易理解;
②使用方便:通用的SQL语言使得操作关系型数据库非常方便;
③易于维护:丰富的完整性(实体完整性、参照完整性和用户定义的完整性)大大减低了数据冗余和数据不一致的概率;
④支持SQL,可用于复杂的查询。
4、关系型数据库的缺点
①为了维护一致性所付出的巨大代价就是其读写性能比较差;
②固定的表结构;
③高并发读写需求;
④海量数据的高效率读写;
非关系型数据库
1、非关系型数据库的特性
①使用键值对存储数据;
②分布式;
③一般不支持ACID特性;
④非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。
2、非关系型数据库的优点
①无需经过sql层的解析,读写性能很高;
②基于键值对,数据没有耦合性,容易扩展;
③存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。
3、非关系型数据库的缺点
①不提供sql支持,学习和使用成本较高;
②无事务处理,附加功能bi和报表等支持也不好;
总结
以上是生活随笔为你收集整理的学习笔记(十四)——MySQL(CRUD)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Qt窗口、控件、文本等的一些常用操作
- 下一篇: 学习笔记(十五)——MySQL(查询)