MySQL基础

1.创建数据库:create database name
2.使用数据库:use name(数据库名称)
3.创建表:
primary key 主键
auto_increment :uid主键自增

create table liuTwo(
 		uid int(18) not null PRIMARY KEY  auto_increment,
		name VARCHAR(20)
	);

4.增
增加单行数据:

 insert into tablename(column,column)values('我是字段1','我是字段2');

增加多行数据:

insert into tablename(column,column,...)values('1','2'),('3','4'),('5','6'),(...);

5.删
删除单、多行:
delete from tablename where …(条件)
删掉所有行

 delete from tablename;

[拓展延伸]
一、delete from table … 是删除行,作为一个事务记录在日志中,可对其进行回滚操作。(若表是id自增的,默认是1开始,删除行后,再插入数据,id是接着生成的。例:删除了3行,再插入1行数据,这一行数据的id是4,紧接之前的序列号)
二、truncate table name(name表示表名) 删除表中所有数据,相当于清空还原表,但表结构还在。不可回滚!(若表是id自增的,默认是1开始,删除行后,再插入数据,新插入的数据,id从1重新开始排序)
三、drop table name 删除表及其结构,即表不存在了,且不可回滚!
【ps】回滚指的是事务操作中返回某一操作前的状态。如:delete了数据,回滚后可恢复数据。但是大前提是尚未执行提交操作(commit),否则回滚无效。
6.改
修改表名:

 alter  table   name  to   newname

修改字段名:

alter  table   name  change   oldcolumn  newcolumn  varchar(20);

修改字段属性:

alter  table  name modify column   name(列名)  varchar(20)  not null ...;

在old字段后增加new字段:

alter table name  add  column  new   varchar  not null  after  old;

7.查

select  columnname   from   tablename   where  .....;

8.更新

update  tablename    set  columnname = "...."  where    条件;

9.数据库引擎
5.5版本后的mysql,拥有两种数据库引擎,MyISAM和InnoDB,两者最大的区别之一在于后者(InnoDB)支持事务处理,而前者不支持。mysql一般数据库引擎默认的是前者(MyISAM)。
10.事务回滚
在数据库引擎为innoDB的情况下,执行的SQL语句,将被默认为一个事务操作,回滚后(callback),可以使数据库恢复到执行该SQL语句(BEGIN)之前的状态,前提是还没有最终提交事务(commit)。提交了事务之后,回滚无效或者说无法回滚。
【ps】更改数据库引擎:alter table name ENGINE=INNODB; (name:表示表名)。
11.事务与回滚操作:

BEGIN
    select * from .....
    insert into ...
    ...
    callback; //回滚

【ps】mysql中的begin和end不能一起用,否则出现以下错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘END’ …
mysql中的end一般同case when else end使用。

12.windows控制台备份MySql 数据库
进入mysql安装目录的bin目录下。
cd \Program Files\MySQL\MySQL Server 5.5\bin
在这里插入图片描述
备份(导出)命令:
mysqldump -u root -p batabaseName > 备份路径\备份文件名称.sql
在这里插入图片描述
1:数据库 liu ; 2:D:\bakup备份的路径 3:sqlname.sql 备份文件的名称

13.windows控制台恢复数据库数据(恢复某几张表数据,跳过第二步,执行第三步)
第一步:登录mysql :

mysql -u root -p       //提示输入密码后

第二步:创建同名的数据库或者新的数据库(前提是原数据库已丢失)

create database  name;   //创建数据库
use name;    //进入数据库

第三步:恢复(导入)数据库文件

source   D:\bakup\sqlname.sql     

](https://img-blog.csdnimg.cn/20190218161511372.png)
第四步:查看是否恢复

show  databases;
use  name;
select * from name;

[拓展延伸]若查出的数据汉字乱码了,说明编码方式有误,需修改为utf-8
查询编码方式:

show variables like '%char%'

修改数据库编码方式:

alter  database  name   character  set   utf8;

order by 排序
1、单个字段 :order by name
2、多个字段 :order by price,name
3、单个字段升序(默认ASC) : order by name
4、单个字段降序(desc):order by name desc
5、多个字段降序(desc):order by name desc,price desc
注:先满足第一个字段的条件下,再满足第二个字段即可。
6、查找所有价格最高的记录:order by price desc limit 1 (最大值有多个,只显示1条)
7、查找所有价格最高的记录(可以查到重复):
SELECT * from business where STATUS = (select MAX(STATUS) FROM business
)
或者"=“改为"in”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值