データベース内の同じテーブルを共有する複数のユーザーが必要ですが、ユーザーごとに 1 つの auto_increment 値があります。組み込みデータベース JavaDB を使用しますが、私が知っている限り、この機能はサポートされていません。どうすれば実装できますか?
ユーザーが最後に挿入した行を検索して追加する挿入にトリガーを実装する必要がありますか、それともより良い代替手段がありますか? それとも、アプリケーション コードでこれを実装する方が良いでしょうか?
それとも、これは単に悪い考えですか?これは、ユーザーごとに新しいテーブルを作成するよりも維持しやすいと思います。
例:
table
+----+-------------+---------+------+
| ID | ID_PER_USER | USER_ID | DATA |
+----+-------------+---------+------+
| 1 | 1 | 2 | 3454 |
| 2 | 2 | 2 | 6567 |
| 3 | 1 | 3 | 6788 |
| 4 | 3 | 2 | 1133 |
| 5 | 4 | 2 | 4534 |
| 6 | 2 | 3 | 4366 |
| 7 | 3 | 3 | 7887 |
+----+-------------+---------+------+
SELECT * FROM table WHERE USER_ID = 3
+----+-------------+---------+------+
| ID | ID_PER_USER | USER_ID | DATA |
+----+-------------+---------+------+
| 3 | 1 | 3 | 6788 |
| 6 | 2 | 3 | 4366 |
| 7 | 3 | 3 | 7887 |
+----+-------------+---------+------+
SELECT * FROM table WHERE USER_ID = 2
+----+-------------+---------+------+
| ID | ID_PER_USER | USER_ID | DATA |
+----+-------------+---------+------+
| 1 | 1 | 2 | 3454 |
| 2 | 2 | 2 | 6567 |
| 4 | 3 | 2 | 1133 |
| 5 | 4 | 2 | 4534 |
+----+-------------+---------+------+