簡體   English   中英

插入新記錄時,將一個表中的ID插入另一個表中

[英]Inserting an ID from one table into another when a new record is inserted

我有一份表格,其中包含員工的個人信息。 我更新了表單,並將其插入到名為employee_info的表中。 它使用詳細信息更新表並插入新ID( employee_id )。 在我的數據庫中,我有另一個名為department_info表,相關的字段是department_id 這是用於將數據插入數據庫的php標記:

$sql_data_array = array('employee_firstname' => $employee_firstname); //other variables go here

if (ACCOUNT_DOB == 'true') $sql_data_array['driver_dob'] = tep_date_raw($driver_dob);

tep_db_perform(TABLE_EMPLOYEES, $sql_data_array);

$employee_id = tep_db_insert_id();

我需要做的是,當表單更新,並將數據插入employee_info表時,我需要它為employee_id插入一個新的id(已經發生),並將department_id插入employee_info表。

department_id用於登錄,我想顯示屬於該部門的員工列表。 誰能告訴我怎么做呢?

當您使用PHP插入時,大多數實現返回所謂的最后一個插入ID。 這是AUTO_INCREMENT列的值。

即使您的實現不支持它,也應該有一個返回它的函數。

編輯:從您的更新,這似乎是osCommerce。 您的代碼的問題是方法tep_db_perform用於插入一個或多個元素。 如果插入2行,會發生什么? 但是在簡單的情況下,使用tep_db_insert_id(),它應該返回最后一個id。

php函數mysqli_insert_id檢索前一個查詢(通常是INSERT)為AUTO_INCREMENT列生成的ID。 獲取此ID並在其他表中使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM