3

私はSQLに少し問題があります。テーブルに 2 つの値を挿入しようとしています。

それが私のクエリです: INSERT INTO tableinfo (table,date) VALUES ('Sell','24 August'); しかし、うまくいきません。私はそのようなものを持っています:

SQL error:
ERROR:  syntax near "INTO"
LINE 1: SELECT COUNT(*) AS total FROM (INSERT INTO tableinfo (table,...
                                              ^
In statement::
SELECT COUNT(*) AS total FROM (INSERT INTO tableinfo (table,date) VALUES ('Sell','24 August')) AS sub

それはかなり基本的なものなので、なぜ機能しないのかわかりません:( PostgreSQL 9.2.4

4

4 に答える 4

5

エラーを再現するために phpPgAdmin をインストールしました。テストテーブルを作成しようとすると、すぐに取得できました。

ここに画像の説明を入力

phpPgAdmin がクエリを にラップしているように見えますselect count(*) as total from (...)クエリページのチェックボックス「Pag​​inate results」がオンに設定されている場合にのみ発生することがわかりました(明らかに、phpPgAdminは取得する行数を数えてからページごとに表示しようとします)。チェックを外すと、クエリが正常に機能します。

ここに画像の説明を入力

于 2013-08-24T17:50:14.337 に答える
0

エラー メッセージがわかりません。ただし、表示されている限り、実行された操作 (INSERT) から選択することはできません。SELECT ステートメントは、リレーションから選択した後にのみ表示されます。あなたの場合の代替手段は、2 つのクエリを別々に実行するか、1 回の実行が許可されている場合はトランザクションを使用することです。

于 2013-08-24T16:46:03.360 に答える