+ -
当前位置:首页 → 问答吧 → 如何调试MYSQL的语句

如何调试MYSQL的语句

时间:2010-10-05

来源:互联网

在conn.pl
定义了连接数据库的语句中(比较长)使用了很多变量,但是老是query 不出结果,使用简单的 select count(*) from $table_name; 就可以query 出结果,说明数据库连接没问题
请问用什么方法可以调试 query 语句哪里出的问题呢?
我用perl -d 调试 QUERY语句的变量 都没问题 ,手动进数据库执行也OK,奇怪阿 到底是啥问题导致用PERL DBI QUERY不出结果呢


请大拿指教

作者: ztj2247   发布时间: 2010-10-05

先把你的SQL语句贴一下。

作者: wxlfh   发布时间: 2010-10-05

查到原因了 好像变量内有单引号会自动换行
这是怎么回事阿!!
大家有这样的情况吗

像是这样SQL语句一部分
#另一个单引号跑到下一行了 ,灰常奇怪啊!!
this_time='2010-10-05 21:56
'

求达人帮忙

作者: ztj2247   发布时间: 2010-10-05

可以确定是 变量query_time的问题
my $query_time =`date "+%Y-%m-%d %H:%M" --date '10minutes ago'`;
这个是调用系统自带的date函数 生成的$query_time 最后可能跟着一个换行符 所以导致最后无法QUERY出数据
请问要如何过滤掉 $query_time  这个变量最后的换行符呢?

作者: ztj2247   发布时间: 2010-10-05

可以了用
chomp($query_time);
就OK了 谢谢大家

作者: ztj2247   发布时间: 2010-10-05