> 백엔드 개발 > PHP 튜토리얼 > 运行SQL语句时出现错误提示,求解

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

WBOY
풀어 주다: 2016-06-23 13:57:01
원래의
1304명이 탐색했습니다.

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')");
这里你换行了,所以不行。

谢了,看来还是基础不够牢,下去一定多多练习。
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿