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

gfdsagfdsa382 2014-05-15 10:35:45
<?php
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)<1){
$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:
...全文
152 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gfdsagfdsa382 2014-05-18
  • 打赏
  • 举报
回复
引用 7 楼 fdipzone 的回复:
[quote=引用 6 楼 gfdsagfdsa382 的回复:] [quote=引用 2 楼 fdipzone 的回复:] 改成这样应该可以了。 $query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
师兄说得对,我试了下,竟然成功了,能详细说说原因吗?为什么我写得就不行,你一改就行了,并且,我看不出两者有什么不同。谢。[/quote] 1.因为你写的那个,有些逗号用了中文的逗号。 涨跌幅``成交量``成交额``委比`,`日期`) values('','','','','','','','','','','','','','$j')"); 2.$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,` 涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')"); 这里你换行了,所以不行。 [/quote] 谢了,看来还是基础不够牢,下去一定多多练习。
傲雪星枫 2014-05-17
  • 打赏
  • 举报
回复
引用 6 楼 gfdsagfdsa382 的回复:
[quote=引用 2 楼 fdipzone 的回复:] 改成这样应该可以了。 $query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
师兄说得对,我试了下,竟然成功了,能详细说说原因吗?为什么我写得就不行,你一改就行了,并且,我看不出两者有什么不同。谢。[/quote] 1.因为你写的那个,有些逗号用了中文的逗号。 涨跌幅``成交量``成交额``委比`,`日期`) values('','','','','','','','','','','','','','$j')"); 2.$query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,` 涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')"); 这里你换行了,所以不行。
gfdsagfdsa382 2014-05-17
  • 打赏
  • 举报
回复
引用 2 楼 fdipzone 的回复:
改成这样应该可以了。 $query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
师兄说得对,我试了下,竟然成功了,能详细说说原因吗?为什么我写得就不行,你一改就行了,并且,我看不出两者有什么不同。谢。
gfdsagfdsa382 2014-05-17
  • 打赏
  • 举报
回复
字符集问题好说,无非是"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“
傲雪星枫 2014-05-16
  • 打赏
  • 举报
回复
改成这样应该可以了。 $query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')");
xuzuning 2014-05-16
  • 打赏
  • 举报
回复
你的代码在 涨跌幅 前面明显有一个换行符 如果用中文做字段名,则需注意表的字符集这否正确
gfdsagfdsa382 2014-05-16
  • 打赏
  • 举报
回复
逗号的问题?不会吧,改成这样应该可以了。 $query=mysql_query("insert into abc (`股票代码`,`股票名称`,`行情时间`,`最新价`,`昨收盘`,`今开盘`,`涨跌额`,`最低价`,`最高价`,`涨跌幅`,`成交量`,`成交额`,`委比`,`日期`) values('','','','','','','','','','','','','','$j')"); 没怎么动呀,哪不同了,看不出来,是不是我的字段与插入数据数量不同呀,又或者是用中文作字段MYSQL不允许??
一起混吧 2014-05-15
  • 打赏
  • 举报
回复
把里面的全角逗号改为半角的再说。

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧