创建自已的sql函数
Posted typical-me
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建自已的sql函数相关的知识,希望对你有一定的参考价值。
# 随机产生字符串
#rand_string(n INT) rand_string 是函数名 (n INT) //该函数接收一个整数
create function rand_string(n INT)
returns varchar(255) #该函数会返回一个字符串
begin
#chars_str定义一个变量 chars_str,类型是 varchar(100),默认值‘abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ‘;
declare chars_str varchar(100) default
‘abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ‘;
declare return_str varchar(255) default ‘‘;
declare i int default 0;
while i < n do
set return_str =concat(return_str,substring(chars_str,floor(1+rand()*52),1));
set i = i + 1;
end while;
return return_str;
end;
# 随机产生部门编号
delimiter $$
drop function rand_num $$
#这里我们又自定了一个函数
create function rand_num( )
returns int(5)
begin
declare i int default 0;
set i = floor(10+rand()*500);
return i;
end $$
在php中的使用例子:
$con=mysql_connect(‘localhost‘,‘root‘,‘password‘);
if(!$con){ die(‘连接失败‘); }
mysql_select_db(‘temp‘);
$sql = "select rand_string(6) as rand_string from dual;" //dual表是亚元表,实际不存在的表
$res = mysql_query($sql.$con);
if($res == mysql_fetch_assoc($res)){
echo $res;
}
以上是关于创建自已的sql函数的主要内容,如果未能解决你的问题,请参考以下文章
EF查询出来的model,与自已创建的modl,取值进行更新