Access 将多行插入 SSMS
Posted
技术标签:
【中文标题】Access 将多行插入 SSMS【英文标题】:Access insert multiple rows into SSMS 【发布时间】:2017-12-15 22:28:20 【问题描述】:我有一个可以访问的表,我正在尝试将所有行插入到 SSMS 中的表中。
这是我在 Access 表单中的数据。我让它在 Access 中工作,它插入第一行。
PONumber RollNumber ItemNumber
123 A20 COFFEESLV.2
123 A21 COFFEESLV.2
123 A23 COFFEESLV.2
Access 调用存储过程和
INSERT INTO Receipts
(
PONumber
, ItemNumber
, RollNumber
)
Values
(
@PONumber --PONumber (These get passed in from the Access Form.(
,@Item --ItemNumber
,'1' --RollNumber (I'm using this for testing. It works. But now it
needs to insert all of them. There could be up to 100.
)
如何让它插入表中的所有行?该表本身也在 SSMS 中。它只是一个表格,保存着咖啡袖卷的值,直到我们收到它们,然后这些值被删除。
ETA - 我认为我的问题是临时表只包含卷号。该表单包含其余信息的字段。所以我不能在 SSMS 中从两个表中进行简单的插入选择。我不知道如何让 Temp 表从子表单中获取字段(我认为它是一个子表单,但它没有连接到任何东西。我试图让它工作但不能。)
谢谢。
【问题讨论】:
为什么不使用绑定表单?然后您的所有日期都将存储在一个表格中,您可以将数据传输到 SSMS。 作为@Rene 的建议,将数据输入到表中然后INSERT SELECT 可能会满足要求:w3schools.com/SQL/sql_insert_into_select.asp。但是,不是查询对象,而是使用 VBA 来构造 INSERT SELECT 并将引用连接到表单控件。然后使用 CurrentDb.Execute 运行 SQL。 刚刚注意到您的查询是一个存储过程。由于没用过,只能猜测INSERT SELECT可以在程序中结构化。 【参考方案1】:谢谢。
我在过程中做了一个插入到选择中。我从表单中传入了我需要的值。在表单上有一个附加到 SSMS 表的子表单。
所以我的插入看起来像
Insert Into MyTable (Number, Color, Size, Price)
Select Number, Color, Size, @Price
From SubfrmTable
您可以直接在插入到 select (@Price) 中输入一个向下传递的变量。我不知道。希望这对其他人有帮助。
【讨论】:
以上是关于Access 将多行插入 SSMS的主要内容,如果未能解决你的问题,请参考以下文章