VB 中insert into select 语句怎么执行不了
DimsqlAsStringDimsql1AsStringDimsql2AsStringDimsql3AsStringDimresAsIntegerDimdsAsADOD...
Dim sql As String
Dim sql1 As String
Dim sql2 As String
Dim sql3 As String
Dim res As Integer
Dim ds As ADODB.Connection
Dim rs As ADODB.Recordset
Set ds = New ADODB.Connection
Set rs = New ADODB.Recordset
ds.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & App.Path & "\评价系统.accdb;Persist Security Info=False;"
Set rs.ActiveConnection = ds
sql1
rs.Open sql1, ds, 3, 3
rs.Close
sql2
rs.Open sql2, ds, 3, 3
rs.close
sql3 = "INSERT INTO 缓变追加 ( ID, BSC, 查询日期, [考核时段掉话次数(24小时)之平均值], [考核时段掉话次数(24小时)], 劣化天数 )"
sql3 = sql3 & "SELECT 缓变性能监控1111.ID, 缓变性能监控1111.BSC, 缓变性能监控1111.查询日期, 缓变性能监控1111.[考核时段掉话次数(24小时)之平均值], 缓变性能监控1111.[考核时段掉话次数(24小时)], 缓变性能监控1111.劣化天数"
sql3 = sql3 & " FROM 缓变性能监控1111;"
Debug.Print sql3
Set rs = ds.Execute(sql3)
sql3 怎么执行不了呢,要怎么做才能执行? 展开
Dim sql1 As String
Dim sql2 As String
Dim sql3 As String
Dim res As Integer
Dim ds As ADODB.Connection
Dim rs As ADODB.Recordset
Set ds = New ADODB.Connection
Set rs = New ADODB.Recordset
ds.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & App.Path & "\评价系统.accdb;Persist Security Info=False;"
Set rs.ActiveConnection = ds
sql1
rs.Open sql1, ds, 3, 3
rs.Close
sql2
rs.Open sql2, ds, 3, 3
rs.close
sql3 = "INSERT INTO 缓变追加 ( ID, BSC, 查询日期, [考核时段掉话次数(24小时)之平均值], [考核时段掉话次数(24小时)], 劣化天数 )"
sql3 = sql3 & "SELECT 缓变性能监控1111.ID, 缓变性能监控1111.BSC, 缓变性能监控1111.查询日期, 缓变性能监控1111.[考核时段掉话次数(24小时)之平均值], 缓变性能监控1111.[考核时段掉话次数(24小时)], 缓变性能监控1111.劣化天数"
sql3 = sql3 & " FROM 缓变性能监控1111;"
Debug.Print sql3
Set rs = ds.Execute(sql3)
sql3 怎么执行不了呢,要怎么做才能执行? 展开
展开全部
sql1,sql2,sql3 都是埋唤搏一个字符类型变量,怎么就可以这样执行?
要利用ADODB.Connection对象的Execute方法
基本步骤应该这样:
ds.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & App.Path & "\评价系统.accdb;Persist Security Info=False;"
ds.Execute "INSERT INTO 缓变追加 ( ID, BSC, 查询日期, [考核时段掉话弯祥次数(24小时)之平均值], [考核时段掉话次数(24小时)], 劣化天数 )"
或者:
ds.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & App.Path & "\评价系统.accdb;Persist Security Info=False;"
sql3 = "INSERT INTO 缓变追链吵加 ( ID, BSC, 查询日期, [考核时段掉话次数(24小时)之平均值], [考核时段掉话次数(24小时)], 劣化天数 )"
ds.Execute sql3
要利用ADODB.Connection对象的Execute方法
基本步骤应该这样:
ds.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & App.Path & "\评价系统.accdb;Persist Security Info=False;"
ds.Execute "INSERT INTO 缓变追加 ( ID, BSC, 查询日期, [考核时段掉话弯祥次数(24小时)之平均值], [考核时段掉话次数(24小时)], 劣化天数 )"
或者:
ds.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & App.Path & "\评价系统.accdb;Persist Security Info=False;"
sql3 = "INSERT INTO 缓变追链吵加 ( ID, BSC, 查询日期, [考核时段掉话次数(24小时)之平均值], [考核时段掉话次数(24小时)], 劣化天数 )"
ds.Execute sql3
展开全部
1、你的SQL语句也不太长,为什么要分开三段写,一行应该可以写下没必要搞多行知盯吧,易出错
2、表名都用那么多的中文表名,能否简化为英文的,毕竟这些语句是在后台运行,你能看懂就行了,中文一个小心错的可铅漏能性很大。
3、看了你的这个语句:INSERT INTO 应该是插入后面括号中的数值到表“缓变追加”中,值应该就是括号中的东西,可是后面忽然又冒出来一个SELECT **** FROM 的语句不知道你是什么意思,你把后面的搭激和这两句去掉应该就可以了INSERT INTO 了吧。
2、表名都用那么多的中文表名,能否简化为英文的,毕竟这些语句是在后台运行,你能看懂就行了,中文一个小心错的可铅漏能性很大。
3、看了你的这个语句:INSERT INTO 应该是插入后面括号中的数值到表“缓变追加”中,值应该就是括号中的东西,可是后面忽然又冒出来一个SELECT **** FROM 的语句不知道你是什么意思,你把后面的搭激和这两句去掉应该就可以了INSERT INTO 了吧。
追问
insert into select 语句,select的值追加进缓变追加的表里的
追答
哦,是insert into select 语句,明白了。
insert into 后的括号中好像是表结构吧,刚才还以为是你要插入的值呢,这个不应该有吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我常用这样的笨办法:
'将sql3输出到页面
response.write sql3
然后将输出的字符串,贴到可执行sql语句的数据库操作界面下运行,看一下报什么错芹启锋
我嫌晌单看文字觉得是"select"前没有空格,程序识别不了导致的。奇怪的是你的"from"前又旁察加了空格。
'将sql3输出到页面
response.write sql3
然后将输出的字符串,贴到可执行sql语句的数据库操作界面下运行,看一下报什么错芹启锋
我嫌晌单看文字觉得是"select"前没有空格,程序识别不了导致的。奇怪的是你的"from"前又旁察加了空格。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个缓唯,,眼睛都要看昏!.把你闭则的sql语句print出来,或者分段放进sql中去执行,你就知道错扰态培误在哪咯!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询