Sql 如何读取文本文件并插入数据库
我有很多文本文件,内容如下: LOG_NAME=LOGX1245; LOT_NO=NA; STEP=NA; NO=CS84E869500115; TIME_START=20190506 094715; TIME_END=20190506 094715 这就是我想要查询的地方。如何根据从文本文件中获取的值查询SQLINSERT语句?有没有更简单的方法Sql 如何读取文本文件并插入数据库,sql,text,vbscript,sql-insert,Sql,Text,Vbscript,Sql Insert,我有很多文本文件,内容如下: LOG_NAME=LOGX1245; LOT_NO=NA; STEP=NA; NO=CS84E869500115; TIME_START=20190506 094715; TIME_END=20190506 094715 这就是我想要查询的地方。如何根据从文本文件中获取的值查询SQLINSERT语句?有没有更简单的方法 Dim查询 Set rsObj=CreateObject(“ADODB.Recordset”) query=“插入” 出错时继续下一步 打开查询,c
Dim查询
Set rsObj=CreateObject(“ADODB.Recordset”)
query=“插入”
出错时继续下一步
打开查询,connObj
尝试下面的代码
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objConn = CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\Users\Desktop\Data.accdb"
For Each objFile In objFSO.GetFolder("C:\Users\Desktop\Data").Files
Set objDataFile = objFSO.OpenTextFile(objFile.Path, 1)
arrData = Split(objDataFile.ReadAll, vbNewLine) 'store file data in array
objDataFile.Close
varValues = Empty: varFields = Empty
For i = LBound(arrData) To UBound(arrData)
arrRowData = Split(arrData(i), "=")
varFields = varFields & "[" & arrRowData(0) & "]," 'square bracket to avoid reserve keyword as field name
arrRowData(1) = Left(arrRowData(1), Len(arrRowData(1)) - 1) 'remove last semicolon
varValues = varValues & "'" & arrRowData(1) & "',"
Next
varFields = Left(varFields, Len(varFields) - 1) 'remove last comma
varValues = Left(varValues, Len(varValues) - 1) 'remove last comma
objConn.Execute "INSERT INTO Data(" & varFields & ") VALUES(" & varValues & ")"
Next
Set objFSO = Nothing
objConn.Close
Set objConn = Nothing
我使用了Access DB来测试代码。另外,我假设Data文件夹中的文本文件类似,它们只包含适合插入数据库的数据
在运行代码之前使用DB
在运行代码后返回DB
我用数据文件夹中的2个文本文件进行了测试。我还想得到列名<代码>varCol=Empty For i=LBound(arrData)To UBound(arrData)varData=Split(arrData(i),“=”(0)”只获取数据部分msgbox varData varCol=varCol&varData&“,“msgbox varCol Next varCol=Left(varCol,Len(varCol)-1)”删除最后分号msgbox varCol objConn。执行“插入数据(”&varCol&〃值(&varValues&〃)如果每个insert查询都成功执行,我可以知道如何执行shcek吗?我尝试了
如果错误号为0,则,如果满足条件,则查询错误。但即使成功插入了艰难的查询,它也会返回true。