弱いエンティティに適切なキー値を挿入するのに苦労します。SQLite:弱いエンティティテーブルに挿入する(または、ちょうど挿入された定義エンティティのIDを取得する方法)
これら2つのエンティティは:
CREATE TABLE 'key' (
'id' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
...
CREATE TABLE 'key_data_rsa' (
'id_key' INTEGER NOT NULL PRIMARY KEY REFERENCES 'key' ('id'),
...
Iは、好ましくは、1つのクエリで、テーブル「キー」とテーブル「key_data_rsa」への鍵データを対応するキーのメタデータを挿入する必要があります。
私はこの問題を理解しているので、 'key_data_rsa'エントリが挿入される前に、 'key'の 'id'が最初に存在する必要があるため、エントリ 'key'を挿入する必要があります。
私が2つのステップでこれを行うと、「キー」エントリのトラックが失われます。「キー」の唯一保証されたユニークキーは「ID」であり、挿入されるとすぐに、 'id'を取得するためにもう一度それを選択することができます。
強力なエンティティへの適切な接続を維持するために、このシナリオで弱いエンティティにデータを挿入するにはどうすればよいですか?
が真剣にに間違っていない限り、このスキームとユースケースにコメントや質問をしないでください。ありがとう。
-m。
データベースにアクセスするために使用している言語は何ですか? –
Perl DBI。それはどういう意味ですか? – mikky
http://stackoverflow.com/questions/6242756/how-to-retrieve-inserted-id-after-inserting-row-in-sqlite-using-pythonを確認してください。Perlで同じロジックを適用できるかどうかを確認してください。 –