十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
创建数据库: create database database-name;
站在用户的角度思考问题,与客户深入沟通,找到永登网站设计与永登网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都做网站、成都网站建设、成都外贸网站建设、企业官网、英文网站、手机端网站、网站推广、主机域名、网站空间、企业邮箱。业务覆盖永登地区。
删除数据库: drop database database-name
查看所有数据库: show databases
进入数据库: use database-name
创建表table:
create table table-name(
id int,
name varchar(number)
money float(10,2)
)charset utf8,
删除表table: drop table table-name
查看表结构: desc table-name
查看所有表: show tables
重命名表table: rename table table-name to table-other-name
中文编码设置{
show variables like 'character%'
set names gbk *必须gbk*
alter table table-name charset gbk
alter tabler table-name modify [column] dataName datatype charset gsk
}
改变表结构(列){
追加: alter table table-name add column dataName datatype
修改数据类型: alter table table-name modify column dataName datatype-other
修改列名: alter table table-name change column dataName dataName-other datatype
删除列: alter table table-name drop column dataName
}
数据库的基本操作{
添加: insert into table-name(dataName,dataName-other,..[添加的数据及数据 顺序]) values(data(符合datatype) , ,)charset utf8
删除: delete from table-name[where definition 删除条件满足的记录|或删除所有 记录]
创建:
delimiter //
create procedure my_add(IN a int, IN b int, OUT c int)
begin
if a is null then set a = 0;
end if;
if b is null then set b = 0;
end if;
set c = a + b;
end;
//
delimiter ;
查看:
方法一:(直接查询,比较实用,查看当前自定义的存储过程)
select `specific_name` from mysql.proc where `db` = 'your_db_name' and `type` = 'procedure'
方法二:(查看数据库里所有存储过程+内容)
show procedure status;
方法三:(查看当前数据库里存储过程列表)
select specific_name from mysql.proc ;
方法四:(查看某一个存储过程的具体内容)
select body from mysql.proc where specific_name = 'your_proc_name';
查看存储过程或函数的创建代码 :
show create procedure your_proc_name;
show create function your_func_name;
调用:
mysql set @a = 10;
Query OK, 0 rows affected (0.00 sec)
mysql set @b = 20;
Query OK, 0 rows affected (0.00 sec)
mysql set @c = 0;
Query OK, 0 rows affected (0.00 sec)
mysqlselect @c;
+------+
| @c |
+------+
| 0 |
+------+
mysql call my_add(@a, @b, @c);
Query OK, 0 rows affected (0.00 sec)
mysql select @a, @b, @c;
+------+------+------+
| @a | @b | @c |
+------+------+------+
| 10 | 20 | 30 |
+------+------+------+
1 row in set (0.00 sec)
删除
drop procedure your_proc_name;
在建设实时数仓的过程中,用到了Mysql存放增量的结果数据,所以需要定时清理历史数据,为了避免影响的线上的实时数据写入,采用了按照最后更改时间,分段删除的方法。对应的存储过程如下: