• MySql表结构修改常用语句

    日期:

    增加列 增加的列位于最后 alter table table_name add col_name varchar(20);alter table table_name add col_name varchar(20) default test not null;alter table table_name add column col_name varchar(20) default test not null; 增加的列在指定的列...

  • 配置记录mysql服务器的慢查询日志

    日期:

    mysql服务可以把超过指定规定时间的sql语句已日志的方式记录下来,检查当前mysql服务有没有记录慢查询的命令为: /usr/local/mysql/bin/mysqladmin var | grep log_slow | tr -d | 如果看到log_slow_queries OFF则没有启用,启用的方法很简单,把如下配置放...

  • mysql的between的边界问题

    日期:

    mysql的sql语句中可以使用between来限定一个数据的范围,例如: select * from user where userId between 5 and 7; 查询userId为5、6,7的user,userId范围是包含边界值的,也等同如下查询: select * from user where userId = 5 and userId = 7; 很多地方...

  • 查看mysql数据库中某个库的存储过程

    日期:

    如果只想知道存储过程的名字,有两种方法 方法一: select `name` from mysql.proc where db = 数据库名 and `type` = PROCEDURE; 方法二: use 数据库名show procedure status; 查看存储过程的代码 use 数据库名show create procedure proc_name;...

  • linux mysql客户端中执行系统命令

    日期:

    在linux下可以用mysql命令登陆连接到mysql服务器,如果这时需要执行shell命令,例如查看某个目录下的文件列表,其实不需要退出mysql客户端,只需要在mysql提示符下输入system或\! 再加上系统命令即可。...

  • mysql 中对存储有中文信息字段使用拼音排序

    日期:

    在mysql中使用order by对存储了中文信息的字段,默认出来的结果并不是按汉字拼音的顺序来排序,要想按汉字的拼音来排序,需要把数据库的字符集设置为UTF8,然后在order by 时候强制把该字段信息转换成GBK,这样出来的结果就是按拼音顺序排序的。例如: SELEC...

  • mysqldump 每条记录都用insert

    日期:

    默认情况下,使用mysqldump备份出来的表记录都是在一条insert语句,这样对于导入来说效率要高些,但是遇到记录很多的大表,可能会超过缓存区的大小,从而导致备份失败,可以使用参数实现一条记录一个insert语句,例如: mysqldump -uroot -p --skip-opt dbna...

  • mysql 存储过程中使用多游标

    日期:

    mysql的存储过程可以很方便使用游标来实现一些功能,存储过程的写法大致如下: 先创建一张表,插入一些测试数据: DROP TABLE IF EXISTS netingcn_proc_test;CREATE TABLE `netingcn_proc_test` ( `id` INTEGER(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR...

  • Mysql存储过程参数名和表列明相同引起的问题

    日期:

    下面存储过程原本是想根据传入的status值来更新对应列的name,代码如下: drop table if exists test_tbl;create table test_tbl (name varchar(20),status int(2));insert into test_tbl values(abc, 1),(edf, 2),(xyz, 3);drop procedure IF EXISTS pro_te...

  • Mysql 存储过程查询结果赋值到变量的方法

    日期:

    把查询结果赋值到变量,大部分情况下使用游标来完成,但是如果明确知道查询结果只有一行(例如统计记录的数量,某个字段求和等),其实可以使用set或into的方式来实现赋值。示例代码: drop table if exists test_tbl;create table test_tbl (name varchar(2...