VBA代码解析:ADODB.Command参数设置及数据库插入
以下代码中,每个参数都被指定了值,用于将数据插入名为"ParamFactValue"的数据库表中。该代码使用循环遍历三种不同的参数类型(直径、面积、力值),并根据类型动态设置SQL命令和参数值。
For i = 0 To 2
Dim cmd As ADODB.Command
Set cmd = New ADODB.Command
cmd.ActiveConnection = conn
' 根据不同的参数类型设置 SQL 命令
Select Case i
Case 0 ' 直径
cmd.CommandText = "insert into ParamFactValue(TestNo,littleNo,Name,TheValue,Unit,UserOrResultParam) values (?,?,?,?,?,?)"
cmd.Parameters.Append cmd.CreateParameter("value0", adVarChar, adParamInput, 255, Range("H7").Value + j) '检测过程的编号
cmd.Parameters.Append cmd.CreateParameter("value1", adVarChar, adParamInput, 255, i) '头编号
cmd.Parameters.Append cmd.CreateParameter("value2", adVarChar, adParamInput, 255, "直径")
cmd.Parameters.Append cmd.CreateParameter("value3", adVarChar, adParamInput, 255, 150)
cmd.Parameters.Append cmd.CreateParameter("value4", adVarChar, adParamInput, 255, "mm")
cmd.Parameters.Append cmd.CreateParameter("value5", adVarChar, adParamInput, 255, 0)
Case 1 ' 面积
cmd.CommandText = "insert into ParamFactValue(TestNo,littleNo,Name,TheValue,Unit,UserOrResultParam) values (?,?,?,?,?,?)"
cmd.Parameters.Append cmd.CreateParameter("value0", adVarChar, adParamInput, 255, Range("H7").Value + j) '检测过程的编号
cmd.Parameters.Append cmd.CreateParameter("value1", adVarChar, adParamInput, 255, i - 1) '头编号
cmd.Parameters.Append cmd.CreateParameter("value2", adVarChar, adParamInput, 255, "面积")
cmd.Parameters.Append cmd.CreateParameter("value3", adVarChar, adParamInput, 255, 150)
cmd.Parameters.Append cmd.CreateParameter("value4", adVarChar, adParamInput, 255, "mm^2")
cmd.Parameters.Append cmd.CreateParameter("value5", adVarChar, adParamInput, 255, 1)
Case 2 ' 力值
cmd.CommandText = "insert into ParamFactValue(TestNo,littleNo,Name,TheValue,Unit,UserOrResultParam) values (?,?,?,?,?,?)"
cmd.Parameters.Append cmd.CreateParameter("value0", adVarChar, adParamInput, 255, Range("H7").Value + j) '检测过程的编号
cmd.Parameters.Append cmd.CreateParameter("value1", adVarChar, adParamInput, 255, i - 1) '头编号
cmd.Parameters.Append cmd.CreateParameter("value2", adVarChar, adParamInput, 255, "力值")
cmd.Parameters.Append cmd.CreateParameter("value4", adVarChar, adParamInput, 255, "KN")
cmd.Parameters.Append cmd.CreateParameter("value5", adVarChar, adParamInput, 255, 1)
End Select
cmd.Execute
Next i
原文地址: https://www.cveoy.top/t/topic/qeZz 著作权归作者所有。请勿转载和采集!