我想问一下关于数据库操作的问题
就是把一个表中的一行数据 用最简单的方法插入一个新表中 (不改变以前的数据)还有个问题 就是如何把一个数组的内容和数据库中的一行数据进行比较
如果 有不相同的地方 再执行一段语句 如果一样就结束
我试了一个一个的读 比较 可是这么做了后 再不好判断是不是该执行后面的语句了 有没有什么简单的方法 还是有什么好的结构去做
就是把一个表中的一行数据 用最简单的方法插入一个新表中 (不改变以前的数据)还有个问题 就是如何把一个数组的内容和数据库中的一行数据进行比较
如果 有不相同的地方 再执行一段语句 如果一样就结束
我试了一个一个的读 比较 可是这么做了后 再不好判断是不是该执行后面的语句了 有没有什么简单的方法 还是有什么好的结构去做
你说的应该是把整个表复制到另一个表
我要的不是这个效果
我要的只是把第一个表中的一行(就是我通过条件查询到的数据)插入到第二个表去
这个语句怎么写啊
这个给我的感觉 就是好像把一列数据写到新表去样的
field 又是什么属性啊?
Dim Rs As New ADODB.Recordset
sqlstr = "select * from new1" '记录集
Rs.Open sqlstr, conn, 3, 3 '打开
conn.Execute "select * into new from new where aaa=111"但是我执行的时候报错啊
Dim Rs As New ADODB.Recordset
if Rs.state then rs.close
sqlstr = "insert into table2 from table1 where field='xxxx'" 'sql语句
Rs.Open sqlstr, conn, 3, 3 '执行
Dim Rs As New ADODB.Recordset
sqlstr = "select * into 表2 from 表1 where 字段名=111"
Rs.Open sqlstr, conn, 3, 3
我使用这个语句的话
sqlstr = "insert into new (aaa,b,c) select aaa,b,c from new1 where aaa = 111"就会报"标准表达式中数据类型不匹配"
我二个表是一样的(通过复制结构和数据来的)
当我把 where 后的 111 改成变量时老是不成功啊
是不是 没有 where 字段名= 变量 这样的语法啊
sqlstr = "select * from oddtab"
Rs.Open sqlstr, conn, 3, 3 '打开
conn.Execute "insert into newtab _
valus (select * form oddtab where fld1="???")"
执行一下。
你好 你的语法没有比较的功能 不能满足我的要求啊
Dim Rs As New ADODB.Recordset
if Rs.state then rs.close
sqlstr = "insert into table2 select * from table1 where field='xxxx'" 'sql语句
Rs.Open sqlstr, conn, 3, 3 '执行保持两个表的结构相同!