ホームページ >バックエンド開発 >PHPチュートリアル >SQL文を実行するとエラーメッセージが表示されます。解決してください。

SQL文を実行するとエラーメッセージが表示されます。解決してください。

WBOY
WBOYオリジナル
2016-06-23 13:57:011306ブラウズ

date_default_timezone_set("アジア/上海");
$h=date("Y-m-d");
$k=date("Y-m-d"); :i:s");
//require_once("dbtools.inc.php");//ここでは提供されていないファイルが含まれています。これらはデータベースの確立と SQL ステートメントの実行に関するものです。自分で作成できます
/ /$link = create_connection ();//上記と同じ
mysql_query("SET NAMES gb2312");
$sql="select * from abc"; execute_sql("data", $ sql, $link);//この関数は付属のファイルに含まれており、自分で記述することができます

if(mysql_num_rows($result)<1){
$query=mysql_query("abc に挿入 (`銘柄コード`,`銘柄名`,`気配時間`,`最新価格`,`昨日の終値`,`本日の始値`,`変動額`,`安値`,`高値`,`

変動額`,`取引高`,`取引金額`,`割り当て比率`,`日付`)values(' ','','','','','','','','','','','','','$j')");
if($ query!=true){echo "exit".mysql_errno().mysql_error();}
echo "sucess";}
?>
実行後、次のプロンプトが表示されます。 Run 1064 SQL 構文にエラーがあります。 ; ',`volume`,`transaction amount`,`competition`,`date`)values('','','','' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。 ,' ','','',''' 1行目:


ディスカッションへの返信(解決策)
全角のカンマを半角のカンマに変更してください

問題ないはずです。 $ query=mysql_query("abc に挿入 (`銘柄コード`,`銘柄名`,`株価時刻`,`最新価格`,`昨日の終値`,`今日の始値`,`上昇幅`,`最安値` , `最高値`、`増減`、`取引高`、`取引金額`、`比較`、`日付`)values('','','','','','', '','','','','','','','$j')");

カンマの問題? いいえ、これに変更すれば問題ありません。

$query= mysql_query( "abc に挿入 (`銘柄コード`、`銘柄名`、`気配時間`、`最新価格`、`昨日の終値`、`今日の始値`、`変動額`、`安値`、`最高値`価格`,`増減`,`取引量`,`取引金額`,`比較`,`日付`)values('','','','','','','' , '','','','','','','$j')");

あまり動きません。違います。わかりません。私のフィールドと挿入されたデータの量が異なりますか、それとも MYSQL のフィールドとして中国語を使用することは許可されていませんか? ?


コード内の「増減」の前に明らかに改行文字があります

フィールド名として中国語を使用する場合は、テーブルの文字セットが正しいかどうかに注意する必要があります

文字セット問題は言うのは簡単で、「mysql_query("SET NAMES gb2312 ");
//mysql_query("SET NAMES UTF8");」に過ぎません。すべて試しましたが、うまくいきません。さらに、「あなたのコードには明らかに「増加と減少」の前に改行文字がありますが、その文はソースコードにはありません。カンマに関するもう一つの問題は、私が試してみたところ、中国語のカンマ、英語のカンマ、半角カンマ、全角カンマがすべて役に立ちません。エラーは「1064 SQL 構文にエラーがあります。'、`ボリューム`、`金額`、`割り当て`、`日付`) 値の近くで使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。 ('','','','','','','',''' at line 1"

これに変更すればOKです。
$query=mysql_query("insert abcに(`銘柄コード`、`銘柄名`、`気配時間`、`最新価格`、`昨日終値`、`今日始値`、`増減額`、`安値`、`最高値` , `増減額 Amount`,`出来高`,`取引金額`,`比較`,`日付`)values('','','','','','','', '','' ,'','','','','$j')");

兄さんの言う通りです。試してみたらうまくいきました。理由を詳しく教えていただけますか?うまく書けていませんか? 変更するだけで問題ありません。ありがとうございます。



$query=mysql_query("insert into) abc (`銘柄コード`、`銘柄名`、`気配時間`、`最新価格`、`昨日終値`、`今日始値`、`変動額`、`安値`、`最高値`、`金額変化`,`取引高`,`取引金額`,`比較`,`日付`)の値('','','','','','','','','') 、''、''、''、''、'$j')");


兄弟の言うとおりです。試してみたらうまくいきました。理由を詳しく教えていただけますか。なぜうまく書けないのでしょうか? 変更するだけで済みますが、両者に違いはありません。ありがとう。



1. あなたが書いたものでは、一部のカンマが中国語のカンマを使用しているためです。
増減、`取引高`、`取引額`、`Veratio`、`日付`) 値('','','','','','','','' ,' ','','','','','$j')");
2.$query=mysql_query("abc (`銘柄コード`,`銘柄名`,`株価時刻 `, `最新価格`、`昨日終値`、`今日始値`、`変動額`、`安値`、`高値`、`

変動額`、`取引高`、`取引高`、` Webi`,`Date`) value('','','','','','','','','','','','','' ,'$ j')");
ここで行を変更したので機能しません。



これに変更すればOKです。
$query=mysql_query("insert into abc (`銘柄コード`、銘柄名`、`気配時間`、`最新価格`、`昨日終値`、`今日始値`、`変動額`、`安値`、`最高値`、`変動額` ,`取引量` ,`取引金額`,`比較`,`日付`)values('','','','','','','','','','' ,'', '','','$j')");


兄さんの言う通りです。試してみたらうまくいきました。理由を詳しく教えてもらえますか? どうしてうまく書けないのですか? 大丈夫です。それを変更してください。ありがとうございます

1. あなたが書いたカンマの一部には、「取引高」、「売上高」が使用されています。 `日付`) 値('','','','','','','','','','','','','',' $j') ");
2.$query=mysql_query("abc に挿入 (`銘柄コード`,`銘柄名`,`気配時間`,`最新価格`,`昨日の終値`,`今日の始値`,`上昇額そして減少`,`最安値`,`最高値`,`

増減額`,`取引高`,`取引高`,`競合`,`日付`)の値('','' , '','','','','','','','','','','','$j')");
ここで行を変更したので、動作しません。

ありがとう、まだ基礎が十分ではないようです、このまま続けたら必ずもっと練習します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHPでのjsonの解析次の記事:PHPでのjsonの解析