优化代码: cmdActiveConnection = conncmdCommandText = insert into TestNoTestNoPlayTimeTestPreceptNameSaveFileNamesampleShapeAreaGaugeLengthIsLogicDelphotoPixJishuElasticBeginDotPosElasticEndDotPosUpYiel
优化后的代码:
Dim sql As String Dim conn As ADODB.Connection Dim cmd As ADODB.Command Dim param As ADODB.Parameter
Set conn = New ADODB.Connection conn.Open "ConnectionString" '替换为实际的连接字符串
sql = "INSERT INTO TestNo (TestNo, PlayTime, TestPreceptName, SaveFileName, sampleShape, Area, GaugeLength, IsLogicDel, photoPixJishu, ElasticBeginDotPos, ElasticEndDotPos, UpYieldDotPos, DownYieldDotPos, MaxDotPos, RpPos, RtPos, RpValue, RtValue, SampleWidth, SampleThick, SampleDia, SampleMinDia, SampleOutDia, SampleInnerDia, DeformSensorName, ExtSensorTotal, ExtSensorDeviceName1, ExtSensorDeviceName2, ExtSensorDeviceName3, ExtSensorDeviceName4, ExtSensorDeviceName5, ExtSensorDeviceName6) VALUES (?, ?, ?, ?, 1, ?, ?, ?, ?, ?, ?, 0, ?, ?, ?, 35, 0.2, 0.5, ?, ?, 0, 0, 0, 0, 3, 0, '扩展设备9', '扩展设备10', '扩展设备11', '扩展设备12', '扩展设备13', '扩展设备14')"
Set cmd = New ADODB.Command With cmd .ActiveConnection = conn .CommandText = sql Set param = .CreateParameter("TestNo", adVarChar, adParamInput, 255, Range("G" & i).Value) .Parameters.Append param Set param = .CreateParameter("PlayTime", adVarChar, adParamInput, 255, pt) .Parameters.Append param Set param = .CreateParameter("TestPreceptName", adVarChar, adParamInput, 255, Range("M4").Value) .Parameters.Append param Set param = .CreateParameter("SaveFileName", adVarChar, adParamInput, 255, Range("M5").Value) .Parameters.Append param Set param = .CreateParameter("Area", adVarChar, adParamInput, 255, area) .Parameters.Append param Set param = .CreateParameter("GaugeLength", adVarChar, adParamInput, 255, Range("D" & i).Value) .Parameters.Append param Set param = .CreateParameter("IsLogicDel", adVarChar, adParamInput, 255, myBoolean) .Parameters.Append param Set param = .CreateParameter("photoPixJishu", adVarChar, adParamInput, 255, Sheets("参考数据").Range("M" & i).Value) .Parameters.Append param Set param = .CreateParameter("ElasticBeginDotPos", adVarChar, adParamInput, 255, Sheets("参考数据").Range("N" & i).Value) .Parameters.Append param Set param = .CreateParameter("ElasticEndDotPos", adVarChar, adParamInput, 255, Sheets("参考数据").Range("O" & i).Value) .Parameters.Append param Set param = .CreateParameter("DownYieldDotPos", adVarChar, adParamInput, 255, Sheets("参考数据").Range("P" & i).Value) .Parameters.Append param Set param = .CreateParameter("MaxDotPos", adVarChar, adParamInput, 255, Sheets("参考数据").Range("Q" & i).Value) .Parameters.Append param Set param = .CreateParameter("RpPos", adVarChar, adParamInput, 255, Sheets("参考数据").Range("P" & i).Value) .Parameters.Append param Set param = .CreateParameter("SampleWidth", adVarChar, adParamInput, 255, Range("E" & i).Value) .Parameters.Append param Set param = .CreateParameter("SampleThick", adVarChar, adParamInput, 255, Range("F" & i).Value) .Parameters.Append param .Execute End With
conn.Close Set conn = Nothing Set cmd = Nothing Set param = Nothing
注:这里的ConnectionString需要根据实际情况进行修改。另外,建议将常量值(如35、0.2、0.5等)提取出来,以便于修改和维护
原文地址: https://www.cveoy.top/t/topic/fILN 著作权归作者所有。请勿转载和采集!