問題タブ [last-insert-id]
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.
java - SELECT LAST_INSERT_ID()
MySQL関数LAST_INSERT_ID()がどのように機能するかを誰かが説明できますか?データベースに最後に挿入された行のIDを取得しようとしていますが、毎回1を取得します。
私はmybatisを使用しています。
クエリの例は次のとおりです。
コード:
出力:
mysql - MYSQL: ストアド プロシージャ、行を挿入してから LAST_INSERT_ID() で選択
AddCluster ウィッチがパラメータ 'title' と 'alt' を取得しているストアド プロシージャ コールを作成しようとしています。
ケース 1:
「タイトル」がデータベースにある場合は、「古い」行を返すだけです!
ケース 2:
「タイトル」がデータベースにない場合、
parmerer 'title' と 'alt' に基づいて行を挿入します
次に、LAST_INSERT_ID() を介して新しく追加された行を選択します
問題はケース2にあります。空しか返されません!!
java - トランザクション内のすべての挿入IDを取得します
MySQLデータベースには「messages」と「message_tags」の2つのテーブルがあります。「messages」テーブルには、自動インクリメント列「message_id」があります。Javaでは、java.sqlパッケージを使用してデータベースにメッセージのバッチを追加したいと思います。クエリを保存するために、これを1つのトランザクションで実行したいと思います。
私のSQLコードは次のようになります。
メッセージテーブルから新しく生成されたすべてのIDを、元のメッセージと一致させることができる方法でJavaに戻すことは可能ですか?このようなもの:
mysql - 自動インクリメント ID を割り当ててテーブルから MySQL を挿入し、3 番目のテーブルで FK を更新します。
私は3つのテーブルを持っています
それらに新しい自動インクリメントIDを割り当て、注文の外部キーを更新するようにコピーold_customers
したいと思います。
この同時の INSERT と UPDATE を 1 つの単純な MySQL クエリで実行するにはどうすればよいですか? new_customers
customer_id
基本的な psudo-sql のアイデア
一週間後 ...
受け取った支援のおかげで、これは開発された MySQL ソリューションです:
CURSOR を宣言する PROCEDURE を作成し、INSERT+UPDATE フェッチ結果をループで作成します。
Simple Cursor Traversal 2で見つけたように、制御変数とラベルのないループです
database - フレックスローカルデータベースlastInsertId=0
ローカルデータベースを作成し、データを挿入しようとしていますが、lastInsertId
ゼロになりますか?!どこでめちゃくちゃ!?
php - PHP PDO :: lastInsertId()およびATTR_PERSISTENT
これとほぼ同じ質問があります。
その投稿に基づいて、PDO :: lastInsertId()は、さまざまな接続から呼び出されたときに安全であることがわかりました。ただし、その接続中にPDO :: lastInsertId()を使用する場合は、これをPDOコンストラクターで使用しないPDO::ATTR_PERSISTENT => true
でください。
つまり、PDO :: lastInsertId()を使用する必要がある場合、アプリケーションは、 PDO接続と接続管理に記載されているように「スクリプトがデータベースと通信する必要があるたびに新しい接続を確立するオーバーヘッド」に耐えることを余儀なくされます。
mysql - 複数のmySQL挿入に関する問題
私は単純なcmsを構築しており、ユーザーがサインアップしたときにデータベースに追加のコンテンツを自動的に作成しようとしています。コードは最初の挿入行で問題なく機能しましたが、2番目の挿入行を追加すると、機能しなくなりました。StackOverflowからこのコード構造を取得し、他のサイトを調べたところ、正しいようですが、私の人生では何が悪いのか理解できません。助言がありますか?
php - トランザクション内の特定のクエリから last_insert_id を取得するにはどうすればよいですか?
3 つのクエリを含む mysql トランザクションがあります
3 番目のクエリでは、前の 2 つのクエリから last_insert_id 値を取得しようとしています。
しかし、うまくいきません。助言がありますか?
mysql - MysqlはストアドプロシージャでLAST_INSERT_IDを使用します
別のメインテーブルに挿入された最後のIDに基づいてテーブルを作成する必要があります。このために、次のストアドプロシージャを作成しました。
ただし、問題は、最初のレコードのみを挿入し、テーブルの作成に失敗することです。私はどこで失敗していますか?