0

これらは私の4つのMySQLテーブルです:

---Users---
user_id
user_name
user_email
user_firstname
user_lastname
user_state
user_country
user_occupation
user_dob
user_accountcreationdate
user_sex
user_password

---Logins----
user_id
last_login
browser_type
ip_address

---User Roles---
user_id
role_id

---Roles---
role_id
role_name
role_description

ユーザーがWebサイトにアカウントを登録すると、ユーザーテーブルにuser_idが自動的に増分されます。ユーザーテーブルからログインおよびユーザーロールテーブルに同じuser_idを取得するにはどうすればよいですか?各テーブルのuser_idは同じです。

ありがとう

4

3 に答える 3

2

1) 新しいユーザーを users テーブルに挿入します

2) user_idMySQLLAST_INSERT_ID()関数を使用して取得します (詳細はこちら)

例:

mysql> SELECT LAST_INSERT_ID();
        -> 195

3) 他のデータ (およびuser_id) を他のテーブルに挿入する

于 2012-10-23T15:13:20.353 に答える
1

users テーブルに挿入した後、最後の挿入 ID を取得できます。または、いつでも select を実行して ID を取得できます。

于 2012-10-23T15:08:29.530 に答える
1

PHP を使用しているので、php コマンドmysql_insert_id() (または mysqli_insert_id() など、使用している任意のフレーバー) を使用できます。

$new_user_id = mysql_insert_id();

これにより、以前に実行された SQL から自動生成された ID が得られます。

于 2012-10-23T15:18:41.387 に答える