Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 从窗体Access数据库插入到表中_Sql_Ms Access_Insert_Inventory Management - Fatal编程技术网

Sql 从窗体Access数据库插入到表中

Sql 从窗体Access数据库插入到表中,sql,ms-access,insert,inventory-management,Sql,Ms Access,Insert,Inventory Management,我一直在尝试让我的数据库根据表单的输入将行添加到库存电子表格中。我尝试了多种不同的方法(如下所列)。如果您能帮助格式化其中一个,使其正常工作,我们将不胜感激。我不知道我是否有语法问题,或者我的做法完全错误,但我主要是使用视频中的代码和这里的问题解答来解释如何解决这个问题,所以我无法让它们工作,这很烦人 我尝试设置一个可以用宏调用的函数,从表单中提取值 Function Add_Record() DoCmd.RunSQL "INSERT INTO Inventory (Kit Name, Exp

我一直在尝试让我的数据库根据表单的输入将行添加到库存电子表格中。我尝试了多种不同的方法(如下所列)。如果您能帮助格式化其中一个,使其正常工作,我们将不胜感激。我不知道我是否有语法问题,或者我的做法完全错误,但我主要是使用视频中的代码和这里的问题解答来解释如何解决这个问题,所以我无法让它们工作,这很烦人

我尝试设置一个可以用宏调用的函数,从表单中提取值

Function Add_Record()
DoCmd.RunSQL "INSERT INTO Inventory (Kit Name, Exp Date, Study) VALUES (' " & [Forms]![Add Kits]![Kit name select] & " ', ' " & [Forms]![Add Kits]![Expiration Date Input] & " ', ' " & [Forms]![Add Kits]![Study Select] & " ');"

End Function
我尝试过各种语法变化(我不确定是否需要用空格代替空格),但没有任何效果

接下来,我尝试在表单本身中设置一个按钮,将所有内容都包含在一个地方

Private Sub Add_Record_Click()
CurrentDb.Execute "INSERT INTO Inventory (Kit Name, Exp Date, Study) Values (' " & Me.Kit_name_select & "', ' " & Me.Expiration_Date_Input & "', ' " & Me.Study_Select & "')"
End Sub
我也试过这种方法


    strSQL = "INSERT INTO Inventory (Kit Name, Exp Date, Study)
VALUES (
    Forms!Add Kits!Kit_name_select.Value,
    Forms!Add Kits!Expiration_Date_Input.Value,Forms!Add Kits!Study_Select.Value
)"
    DoCmd.RunSQL strSQL
切换表单!X!和我一起用X格式。s、 但理论上这不应该成为问题?我希望有一些语法问题发生,或者有一个大的变化,我需要修复。然而,这让人恼火,因为所有这些策略都是根据我所读到的内容来实现我的目标的

非常感谢您的帮助!此外,解释是伟大的,因为我显然是相当新的这一点,但想学习

同样,这将有望根据表单研究(组合框字符串)、工具包名称(组合框字符串)和过期日期(文本框日期)的输入向表中添加一行。另外,如果有任何方法使它基于另一个输入(数量)循环,这也会很有帮助。谢谢大家!

Execute方法对日期字段使用#分隔符而不是撇号。删除撇号后的空格

带有空格、特殊字符或保留字的对象名称需要[]分隔符。建议不要在命名约定中使用空格或标点/特殊字符

可以使用For Next循环根据数量重复输入记录

Private Sub Add_Record_Click()
Dim x As Integer
For x = 1 to Me.Quantity
    CurrentDb.Execute "INSERT INTO Inventory ([Kit Name], [Exp Date], Study) " & _
             "Values ('" & Me.[Kit name select] & "', #" & Me.[Expiration Date Input] & "#, '" & Me.[Study Select] & "')"
Next
End Sub
Execute方法对日期字段使用#分隔符而不是撇号。删除撇号后的空格

带有空格、特殊字符或保留字的对象名称需要[]分隔符。建议不要在命名约定中使用空格或标点/特殊字符

可以使用For Next循环根据数量重复输入记录

Private Sub Add_Record_Click()
Dim x As Integer
For x = 1 to Me.Quantity
    CurrentDb.Execute "INSERT INTO Inventory ([Kit Name], [Exp Date], Study) " & _
             "Values ('" & Me.[Kit name select] & "', #" & Me.[Expiration Date Input] & "#, '" & Me.[Study Select] & "')"
Next
End Sub

谢谢我发现命名规则有点晚了,所以我现在有点困了=(刚刚试过你的代码,它会添加到记录中,但两个字符串字段都是空的。我将尝试在按下时将其设置为“重新查询两个”,以防出现刷新问题,是否还有其他原因导致此问题?编辑:无需担心!解决了,再次感谢!是否可以将``Dim x解释为x的整数=1对我来说。数量“``部分?我不确定这是做什么的。我不知道组合框会失败的原因。我需要更多地了解它们的属性。下一步的
就是你要求的循环代码的例子。建议你对循环结构做些研究,以便更好地理解。是的,我在repl之后马上意识到了这一点莹,哈哈。谢谢!谢谢!我发现命名规则有点晚了,所以我现在有点困了=(刚刚试过你的代码,它会添加到记录中,但两个字符串字段都是空的。我将尝试在按下时将其设置为“重新查询两个”,以防出现刷新问题,是否还有其他原因导致此问题?编辑:无需担心!解决了,再次感谢!是否可以将``Dim x解释为x的整数=1对我来说。数量“``部分?我不确定这是做什么的。我不知道组合框会失败的原因。我需要更多地了解它们的属性。下一步的
就是你要求的循环代码的例子。建议你对循环结构做些研究,以便更好地理解。是的,我在repl之后马上意识到了这一点莹,哈哈,谢谢!