問題タブ [select-insert]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHPを使用して、テーブルから選択したデータを別のテーブルに挿入する方法は?
同じデータベースの下にあるテーブルの 1 つから選択したデータを挿入したいと考えています。コードはありますが、機能しません。
モジュールインデックス.php
insertdata.php
mariadb - COLUMN_CREATE (動的列) としての MariaDB INSERT 値
別のテーブルから選択するように動的列を挿入する必要があります。
私は試した:
と
と
MariaDB は常に#1064 を返します - SQL 構文にエラーがあります。
mysql - MySQL矛盾挿入
テーブルの 1 つに (同じテーブルから) 挿入しようとしています。値の1つを変更する必要があるため、ここで回答したように選択して挿入しようとしました。自動インクリメント pk があり、新しく挿入された pk でカウントを続行したいと考えています。したがって、挿入すると、pk に 1 が追加されます。
1
KEY PRIMARY のエントリが重複している 1062 エラーが表示されます。AIのせいでID列が+1されると思います。だから私は追加できるかどうかを確認しましたON DUPLICATE KEY UPDATE id
。残念ながら、クエリのどこにそれを入れても問題ありませんでした。
要するにINSERT
、AI機能を保持しながら選択して、このようにすることはできますか? もしそうなら、私はどこで間違っているのですか?
追加:私のテーブルのステートメントを作成します:
mysql - 切り捨ておよび選択挿入後の mysql auto_increment PK ID が 65536 になる
テーブル t1 には、1 から約 40k までの値を持つ int auto_increment PK (id) があります。
テーブル内のデータをクリアおよびリセットするコードは次のとおりです。
この方法で挿入される行数は、通常 40k から 41k の間です。
t1.id
select-insert には挿入されません。
実行すると
正確に 65536 の id の新しい auto_increment 値を示しています。
ただし、id の値は 1 から 40123 まで、または select-insert の結果の行数のままです。
しかし、新しい挿入は id を 65536 に設定します。
mysqlは、40k が Select-Insert のおおよその結果セット サイズであるため、最も近い上限マイルストーン サイズ 65536 を使用する必要があると予想していますか?
または、 TRUNCATE の後に明示的なステートメントを配置する必要がありますか?