Php 使用两个单独的插入将主键插入到另一个表中

Php 使用两个单独的插入将主键插入到另一个表中,php,sql,sql-server,Php,Sql,Sql Server,我的代码可能非常草率,这可能就是我无法让它工作的原因。(注意:我正在使用php。)我的页面上有2个插入,我需要从第一个插入复制主键,并在第二个插入中使用它。CustBill\u计费的主键是“bill\u ID”。有没有办法在查询后输出CustBill_billing的主键,以便我在第二次插入时使用 第一次插入: $sql=" INSERT INTO CustBill_billing (C_ID, bolNum, type, le, waybill_date, bill_type, bol

我的代码可能非常草率,这可能就是我无法让它工作的原因。(注意:我正在使用php。)我的页面上有2个插入,我需要从第一个插入复制主键,并在第二个插入中使用它。CustBill\u计费的主键是“bill\u ID”。有没有办法在查询后输出CustBill_billing的主键,以便我在第二次插入时使用

第一次插入:

    $sql="
INSERT INTO CustBill_billing (C_ID, bolNum, type, le, waybill_date, bill_type, bol_date, con_name, con_city, con_state, ship_name, ship_city, ship_state, contract_num, weight, weight_cd, weight_auth, edc, fsac, ind, stcc, rr_from, rr_to, paymentMeth, unlDcd) 
VALUES ('1', '$pbolNum', '2', 'L', '$today', 'L', '$pbol_date', '$pcon_name', '$pcon_city', '$pcon_state', '$pship_name', '$pship_city', '$pship_state', '$pcontract_num', '$pweight', '$pweight_cd', 'A', 'RR', '1', '$pind', '$pstcc', '$prr_from', '$prr_to', '$ppaymentMeth', '$punlDcd')
";
第二次插入:

foreach($_POST['car_init'] as $key => $car_init)
{
$sql1 = "INSERT INTO CustBill_cars (C_ID, car_init, car_num, bolNum) VALUES ('1', '".$car_init."', '".$car_num[$key]."', '$pbolNum')
";

我将它们分开的原因是,由于自动生成的文本框,我必须循环第二次插入;它检查数组中有多少条记录,然后将每条新记录插入CustBill\u cars表。每次插入时,我都需要从第一次插入创建的主键插入到第二个查询中名为“carbill\u ID”的字段中。

在SQL Server中,如果您的ID字段是一个标识,则可以尝试SCOPE\u Identity()。例如:

INSERT INTO dbo.MyTable(columns)
   VALUES(...)

SELECT SCOPE_IDENTITY()

我弄明白了,我把事情弄得比需要的复杂多了

$sql1 = "INSERT INTO CustBill_cars (C_ID, car_init, car_num, bolNum, bill_ID)
SELECT 1, '".$car_init."', '".$car_num[$key]."', $pbolNum, CustBill_billing.bill_ID
FROM CustBill_billing
";
可能重复的