如何手动添加新记录到新的&空的ADODB.Recordset?如何手动将新记录正确添加到空记录集?
眼下,这里是我在做什么不工作:
Dim rs as ADODB.Recordset
rs.Open
Dim Fields() as String
Fields(0) = "SomeFieldName"
Dim Values() as String
Value(0) = "SomeValue"
rs.AddNew Fields, Values
如何手动添加新记录到新的&空的ADODB.Recordset?如何手动将新记录正确添加到空记录集?
眼下,这里是我在做什么不工作:
Dim rs as ADODB.Recordset
rs.Open
Dim Fields() as String
Fields(0) = "SomeFieldName"
Dim Values() as String
Value(0) = "SomeValue"
rs.AddNew Fields, Values
就地:
rs.AddNew "SomeFieldName", "SomeValue"
或就地多个领域
rs.AddNew Array("SomeFieldName", "AnotherFieldName"), Array("SomeValue", 1234)
或使用单独的变量
Dim Fields As Variant
Dim Values As Variant
Fields = Array("SomeFieldName")
Values = Array("SomeValue")
rs.AddNew Fields, Values
编辑:这是如何合成一个记录为样本的AddNew上述
Set rs = new Recordset
rs.Fields.Append "SomeFieldName", adVarChar, 1000, adFldIsNullable
rs.Fields.Append "AnotherFieldName", adInteger, , adFldIsNullable
rs.Open
我通常使用一个辅助函数CreateRecordset
所看到this answer。
set rs = new ADODB.Recordset
rs.Open "Select SomeFieldName, AnotherFieldName FROM MyTable", myConnection, adOpenDynamic, adLockOptimistic
rs.AddNew
rs("SomeFieldName").Value = "SomeValue"
rs("AnotherFieldName").Value = 1
rs.Update
rs.AddNew
rs("SomeFieldName").Value = "AnotherValue"
rs("AnotherFieldName").Value = 2
rs.Update
rs.Close
以开放的连接康恩:
sSql="INSERT into mytable (somefieldname, anotherfieldname) values ('Somevalue','Anothervalue')"
Conn.Execute sSql
你可能包括的AddNew之前的申报和准备记录的()调用?我想确保我正在做所有需要做的事情,不多也不少。 – bitcycle 2010-02-19 15:53:08
添加了创建记录集示例代码 – wqw 2010-02-19 18:49:56
您真的救了我的命! – 2012-09-12 16:31:51