Maison  >  Article  >  développement back-end  >  运行SQL语句时出现错误提示,求解

运行SQL语句时出现错误提示,求解

WBOY
WBOYoriginal
2016-06-23 13:57:011284parcourir

date_default_timezone_set("Asia/ShangHai");
$h=date("H:i:s");
 $j=date("Y-m-d");
 $k=date("Y-m-d H:i:s");
//require_once("dbtools.inc.php");//包含文件,这里没有提供,是关于数据库建立和执行SQL语句的,可以自行编写
 //$link = create_connection();//同上
mysql_query("SET NAMES gb2312");
//mysql_query("SET NAMES UTF8");
           $sql="select * from abc";
$result = execute_sql("data", $sql, $link);//此函数在包含文件中,没有提供,可自行编写

if(mysql_num_rows($result) $query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`

涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
if($query!=true){echo "exit".mysql_errno().mysql_error();}
echo "sucess";}
?>
运行后出现如下提示运行1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','',''' at line 1:


回复讨论(解决方案)

把里面的全角逗号改为半角的再说。

改成这样应该可以了。
$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");

逗号的问题?不会吧,改成这样应该可以了。
$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')"); 

没怎么动呀,哪不同了,看不出来,是不是我的字段与插入数据数量不同呀,又或者是用中文作字段MYSQL不允许??

你的代码在 涨跌幅 前面明显有一个换行符

如果用中文做字段名,则需注意表的字符集这否正确

字符集问题好说,无非是"mysql_query("SET NAMES gb2312");
//mysql_query("SET NAMES UTF8");"都试过了,不行的。另外“你的代码在 涨跌幅 前面明显有一个换行符",声明,源码中没有。再有,逗号问题,刚刚试了,中文逗号,英文逗号,半角逗号 ,全角逗号都没有用。错误照旧”1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ',`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','',''' at line 1“

改成这样应该可以了。
$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");


师兄说得对,我试了下,竟然成功了,能详细说说原因吗?为什么我写得就不行,你一改就行了,并且,我看不出两者有什么不同。谢。


改成这样应该可以了。
$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");


师兄说得对,我试了下,竟然成功了,能详细说说原因吗?为什么我写得就不行,你一改就行了,并且,我看不出两者有什么不同。谢。

1.因为你写的那个,有些逗号用了中文的逗号。
涨跌幅` ,`成交量` ,`成交额` ,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
2.$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`

涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
这里你换行了,所以不行。



改成这样应该可以了。
$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");


师兄说得对,我试了下,竟然成功了,能详细说说原因吗?为什么我写得就不行,你一改就行了,并且,我看不出两者有什么不同。谢。

1.因为你写的那个,有些逗号用了中文的逗号。
涨跌幅` ,`成交量` ,`成交额` ,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
2.$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`

涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
这里你换行了,所以不行。

谢了,看来还是基础不够牢,下去一定多多练习。
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:PHP中解析jsonArticle suivant:iframe中加载的网页无法正常显示