【发布时间】:2019-02-27 04:13:34
【问题描述】:
我有 3 个表,Merchant_Master、Merchant_PaymentDetail 和 Merchant_refference 主表是这样的,id是自动增量
+----+------+------------+----------------+
| id | mid | acquirerID | merchantName |
+----+------+------------+----------------+
| 1 | 2345 | 3 | store 1 |
+----+------+------------+----------------+
Merchant_PaymentDetail 长这样,第一列是 AutoIncrement
+----+-----+--------+-------------+
| id | mid | BankID | AccountNo |
+----+-----+--------+-------------+
| | | | |
+----+-----+--------+-------------+
Merchant_Refference 表是这样的,第一列是 AutoIncrement
+----+-----+--------+---------------------+
| id | mid | Reference 1 | Reference 2 |
+----+-----+--------------+---------------+
| | | | |
+----+-----+--------------+---------------+
现在我想使用插入语句将记录插入到所有三个表中,但是我如何从商家主表中获得相同的中间值到其他两个表 (mid不是AutoIncremented),我必须使用@@IDENTITY来实现这一点还是有其他方法。
【问题讨论】:
-
您使用诸如“AutoIncrement”和“last insert id”之类的术语。这些通常与 MySQL 相关联。您确定您使用的是 SQL Server 吗?如果是这样,只有一个版本是合适的。
-
是的,我正在使用 SQL 服务器
-
你能为我们澄清一下吗...所以你想在所有三个表中插入相同的
mid不是 IDENTITY 列(不是自动递增的) 在其中任何一个?为什么不将相同的值插入所有三个中,是什么阻止了你? -
我有一个表单,我必须从用户那里获取输入并将记录插入三个表中,我正在使用存储过程来插入记录
-
因为您使用表单进行用户输入,而存储过程来完成其余的工作。然后使用变量,它将保存用户输入数据,您可以在插入语句中使用它们。
标签: sql asp.net sql-server sql-server-2008 sql-server-2012