2016-09-07 8 views
1

それは私がMySQLでクエリを実行すると、SQLは以下の通りですエラーを報告しました:なぜmysqlのクエリでエラーが発生したエラー:?切り捨てられた間違ったDOUBLE値:「114.243.134.208」

update bsk.bskchapterlist set stateid=6 where username=11111111111 and lessonid=987; 

エラーました。

Error : Truncated incorrect DOUBLE value: '114.243.134.208' 

しかし、値はどこでしたか '114.243.134.208'はどこから来ましたか?

この問題を解決するにはどうすればよいですか。

+0

このテーブルにトリガーがありますか? –

+0

stateid、username、lessonidの各フィールドは、DBのデータ型intになっていますか? –

+0

ユーザー名の種類は何ですか?私はそれがvarcharだと思います。値の周りに引用符を入れる必要があります( 'username = '1111111111'') – cypherabe

答えて

1

DBテーブルのデータ型を確認してください。フィールドのいずれかにvarcharデータ型がある場合は、引用符で囲みます。 usernameフィールドにdatatype varcharを指定し、次のクエリを使用してみましょう。私はstateidとlessonidフィールドがintデータ型を持っていると仮定し、データ型varcharを持つもののいずれかが引用符で囲んでください。

update bsk.bskchapterlist set stateid=6 where username='11111111111' and lessonid=987; 
+0

ありがとう、それは動作します!他のデータベースで同じSQLを使用すると、正しく実行されますが、なぜですか? もしそれがmysqlのバージョンにdenaint? – shaidiren

+0

これらのフィールドのデータ型は、他のデータベースのint型である可能性があります。またはMysqlのバージョンも影響を与えます。 –

関連する問題