一个mysql的存储过程,哪里有问题?
SQL code:
create procedure(in w varchar(20),out c int)
begin
set @sqlcount=concat('select count(*) into @c from scms_product where ',w);
prepare stm1 from @sqlcount;
execute stm1;
set c=@c;
set @sql=concat('select * from scms_product where ',w);
prepare stm2 from @sql;
execute stm2;
end
上面的存储过程在mysql里运行正常,要求在php里得到out变量c的值,php代码是这样的
PHP code:
$rs=$mysqli->query("call p5('cateid=5',@c)");
$res=$mysqli->query("select @c");
$row=$res->fetch_row();
echo $row[0];
运行的时候就会出现错误提示,Call to a member function fetch_row() on a non-object 如果我去掉存储过程中的
set @sql=concat('select * from scms_product where ',w);
prepare stm2 from @sql;
execute stm2;
这几行就正常了,请问我的php程序该怎么写?
create procedure(in w varchar(20),out c int)
begin
..
这个本身语法上就过不去。
建议你能贴出你实际问题的代码以便分析。
create procedure SP名字(in w varchar(20),out c int)
begin
set @sqlcount=concat('select count(*) into @c from scms_product where ',w);
prepare stm1 from @sqlcount;
execute stm1;
set
相关问答:
这个视频讲的很详细, 对新手非常有用, 基本上一看就懂
由于太大了(50m, 我只能上传20m), 我上传不了, 只好贴出下载地址
下载地址: http://ftel1.3800hk.com/0807/080720djxnzj.rar
好东西,下个看看
......
我开发ASP.net时
插入外文乱码
SHOW VARIABLES LIKE 'character%';
这个时候
character_set_client utf8
character_set_connection utf8
character_set_database utf8
ch ......
echo %~dp0
CD %~dp0
mysqld.exe --defaults-file=..\my.ini --console
pause
大家看看以上bat文件的意思,请大侠给个详细的解释啊。
这是启动mysql服务啊。
echo %~dp0
显示当前bat所在目录名
CD %~dp0
......
请问下哪位仁兄有比较好的备份方案,用什么工具或者用什么方式,小弟借鉴下
直接用MYSQLDUMP备份
OR
用SQLYOG之类的图形化管理工具备份
直接用mysql自带的 mysqldump 就可以了。
http://dev.mysql.com/doc/re ......
我在清理mysql的时候,一不留神将mysql(即data里的mysql文件夹)数据库给删掉了,隔了几个小时我重启了mysql软件,mysql就自动初始化了数据库,导致从删除mysql文件夹开始到重启这段时间的数据丢失,那位高手帮想想办 ......