MySql 判断汉字、日期、数字的函数
几个平常用的mysql函数
/*****************************************************
1.判断字符串是否为汉字 返回值:1-汉字 0-非汉字
*****************************************************/
DROP FUNCTION IF EXISTS fc_is_hanzi;
CREATE FUNCTION fc_is_hanzi(
p_str VARCHAR(1024)
)
RETURNS int(11)
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT '检查字符串是否为汉字'
BEGIN
/*检查字符串是否为汉字 返回值:1-汉字 0-非汉字*/
DECLARE _ret, i, other_cnt, l_acode INT DEFAULT 0;
SET _ret = 0;
SET i = 1;
SET other_cnt = 0;
SET l_acode = 0;
WHILE i <= CHAR_LENGTH(p_str) DO
SET l_acode = ASCII(SUBSTRING(p_str, i, 1));
IF l_acode<124 or l_acode>254 THEN
SET other_cnt = other_cnt + 1;
END IF;
SET i = i + 1;
END WHILE;
IF other_cnt = 0 THEN
SET _ret = 1;
ELSE
SET _ret = 0;
END IF;
RETURN _ret;
END;
/*****************************************************
2.判断日期格式是否正确(返回值:1-正确 0-错误)
*****************************************************/
DROP FUNCTION IF EXISTS fc_ck_date;
CREATE FUNCTION fc_ck_date(
p_cont CHAR(32)
)
RETURNS tinyint(4)
NOT DETERMINISTIC
SQL SECURITY DEFINER
COMMENT '判定日期格式是否正确'
BEGIN
/*判定日期格式是否正确(返回值:1-正确 0-错误)*/
/*输入值格式为:yyyyMMdd 或 yyyy-MM-dd*/
IF(SELECT DATE_FORMAT(p_cont
相关文档:
mysql出错了,以前往往靠猜.有了这张表,一查就出来了.方便不少.特共享于众
1005:创建表失败
1006:创建数据库失败
1007:数据库已存在,创建数据库失败
1008:数据库不存在,删除数据库失败
1009:不能删除数据库文件导致删除数据库失败
1010:不能删除数据目录导致删除数据库失 ......
首先,打开cmd—–net start 查看mysql是否启动。启动的话就停止net stop mysql.
1、在dos下运行C:\Program Files\MySQL\MySQL Server 5.0\bin
2、mysqld-nt --init-file=c:\mysql\pwdhf.txt 其中在c:\mysql建一个pwdhf.txt文件,并写下你的新密码。
3、运行些命令后,再用新密码登录,即可成功修改密码。 ......
1、如果使用sqlite3时出现如下错误:
/!\ FAILSAFE /!\ Thu Jul 30 22:16:15 +0800 2009
Status: 500 Internal Server Error
unknown error
c:/ruby/lib/ruby/1.8/dl/import.rb:29:in `initialize'
c:/ruby/lib/ruby/1.8/dl/import.rb:29:in `dlopen'
&nb ......
最近遇到这样的问题
会报at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1905)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2351)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2862)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1571)
at com.mysql.jdbc.MysqlIO.sqlQuery ......
字段pageNum
1,6,9,11
希望排序顺序为1,6,9,11
但是实际排序为1,11,6,9
后来发现是因为pageNum这个字段是varchar类型的不是int型,所以排序会出问题。
网上的解决方法为
order by pageNum+0
order by pageNum×1
不知道为什么order by pageNum×1 数据库通不过
但是pageNum+0是好用的 ......