1

誰でもmysqldbテーブルから値を削除するための正しいクエリを教えてもらえますか?私の場合、テーブル名とIDはユーザーから受け入れられ、行はidに基づいて削除されます。これは私のクエリです

 sprintf(Query,"DELETE FROM ('%s') where id = (%d)",tb1,idt1) ;
 /*table name is in form of string and id is int */

 mysql_query(conn,Query);
4

1 に答える 1

0

テーブル名を囲む括弧を削除する必要があります。

sprintf(Query,"DELETE FROM '%s' where id = (%d)",tb1,idt1) ;

MySQL は、次のようなクエリを構文エラーと見なします。

delete from (mytable) where id=2;

SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、1 行目の '(mytable) where id=2' 付近で使用する正しい構文を確認してください。

( SQL インジェクション攻撃についてすべて知っていること、およびユーザー入力から何らかの形や形式で構築されていないことを前提としています) tb1idt1

于 2012-11-30T11:03:10.653 に答える