如何将不同类别的多个文本框值存储到一个表中?

时间:2019-02-25 07:14:26

标签: mysql ms-access

请参考这张图片:
FormUI

因此,我制作了一个包含11台机器的11x3文本框的表单。一台机器具有3个参数文本框。

我的表名为TOSA_settings,其字段如下:
UCL
拼箱
意思
机器

我已禁用所有文本框,因为用户应能够编辑/更新他们仅想更新的任何计算机。如果用户要更新计算机1,则将单击TOSA 01文本框右侧的编辑标签,然后将使文本框为true。用户可以填写数据,然后仅保存该特定计算机。其余的将保持残疾。

现在,我只尝试对两台机器进行编码以查看其是否有效。

因此,我在cmdSave_Click()下编写了这样的代码

Dim strSQL As String

If mean1.Value <> "" Then
    strSQL = "INSERT INTO TOSA_settings( UCL, LCL, mean, machine) VALUES (" & Me.UCL1 & "," & Me.LCL1 & ", " & Me.mean1 & ", 'TOSA 01');"
End If
If mean2.Value <> "" Then
    strSQL = "INSERT INTO TOSA_settings( UCL, LCL, mean, machine) VALUES (" & Me.UCL2 & "," & Me.LCL2 & ", " & Me.mean2 & ", 'TOSA 02');"
End If
CurrentDb.Execute strSQL, dbFailOnEror

但是它仅保存TOSA 02中的值。 还是应该创建其他表,每个表一台?

1 个答案:

答案 0 :(得分:0)

您将必须执行两次(或多次执行):

Dim strSQL As String

If mean1.Value <> "" Then
    strSQL = "INSERT INTO TOSA_settings( UCL, LCL, mean, machine) VALUES (" & Me.UCL1 & "," & Me.LCL1 & ", " & Me.mean1 & ", 'TOSA 01');"
    CurrentDb.Execute strSQL, dbFailOnEror
End If
If mean2.Value <> "" Then
    strSQL = "INSERT INTO TOSA_settings( UCL, LCL, mean, machine) VALUES (" & Me.UCL2 & "," & Me.LCL2 & ", " & Me.mean2 & ", 'TOSA 02');"
    CurrentDb.Execute strSQL, dbFailOnEror
End If