将文本数据导入到数据库中:
数据的导出:
查看数据库导出位置:show variables like '%secure%';
导出语句:
select * from 数据库.数据表名 into outfile ‘文件名’;
select * from t_aaa' into OUTFILE '/var/lib/mysql-files/1111.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n'
数据库的备份
1.导出整个数据库
mysqldump -uroot -p 数据库名 > 导出文件名
2.导出一个表
用法:mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名
mysqldump -uroot -p student student>d:/learn/db_student.student.backup
3.导出一个数据结构
用法:mysqldump -uroot -p -d --add-drop-table 数据库名>导出文件名
mysqldump -uroot -p -d --add-drop-table test>d:/learn/db_test.structure.backup
**注意:
-d 表示没有数据
--add-drop-table 表示在每一个
create 语句之前添加一个 drop table 语句
打开 c:/learn/db_test.structure.backup文件,和先前的两个文件比较,你会发现该文件里没有我们插入的数据.
重命名数据库表
alter table 旧名 rename 新名
39.高效使用索引的好处和优势:
下面讨论的是用了索引会给我们带来什么?
1.) 获得域where从句中匹配的行:select * from customer where surname>'c';
2.) 查找max()和min()值时,mysql只需在排序的索引中查找第一个和最后一个值。
3.) 返回的部分是索引的一部分,mysql就不需要去查询全表的数据而只需看索引:select idfrom customer;
4.) 对域使用order by的地方:select * from customer order by surname;
5.) 还可以加速表的连接:select first_name,surname,commission from sales,sales_rep where sales.sales_rep=sales_rep.employee_number and code=8;
6.) 在通配符的情况下:select * from sales_rep where surname like 'ser%';
这种情况就不能起作用:select * from sales_rep where surname like '%ser%';
41.如何对已有的数据表的字段,新增索引:
alter table customer add index(surname,initial,first_name);
42.最左边规则
区块,条件,循环
一
.
创建存储过程
1.基本语法:
create procedure sp_name()
begin
.........
end
2.参数传递
添加定时任务:
可参考:https://blog.csdn.net/zlp5201/article/details/38309095
1、要想保证能够执行event事件,就必须保证定时器是开启状态,默认为关闭状态
set GLOBAL event_scheduler = 1;
或
set GLOBAL event_scheduler = ON;
要查看当前是否已开启事件调度器,可执行如下SQL:
SHOW VARIABLES LIKE 'event_scheduler'
2、如果原来存在该名字的任务计划则先删除
drop event if exist upload_to_sdmp;
3、创建定时任务
- CREATE EVENT update_month_card_open
- ON schedule every 10*60 second
- ON COMPLETION PRESERVE ENABLE DO
- #这里只是修改包月卡的会员的不在这里修改
- 'your SQL'
4、开启定时器 event_name 任务的名字
alter event update_month_card_open on completion preserve enable;
5、关闭事件:
ALTER EVENT upload_to_sdmp DISABLE;