以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]关于统计外部数据源某个表数据的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=15981) |
-- 作者:gzdw -- 发布时间:2012/1/26 21:00:00 -- [求助]关于统计外部数据源某个表数据的问题 有一个外部数据源,已通过动态加载数据源测试如下:
Dim str1 As String str1="连接字符串" \'按实际情况编写 If Connections.TryConnect(str1) = False Then MessageBox.Show("数据源无法连通!") Else MessageBox.Show("数据源连通成功!") If Connections.Contains("OracleDB")=False Then Connections.Add("OracleDB",str1) End If End If
这段代码已有“数据源连通成功”的提示。
请问: 如何用这个数据源去统计其中一个表,并把统计结果保存至一个变量中?
我试着用统计内部表的方式,结果提示找这不到外部数据源的{表} 统计内部数据源的方式:
内部表的做法: Dim ld As Integer Dim cmd As New SQLCommand cmd.CommandText ="查询条件" \'实际需要编写 ld = cmd.ExecuteScalar() MessageBox.Show(ld) \'显示变量值
补充生成外部查询表的语句: Dim q As new QueryBuilder q.TableName = "外部数据查询" q.SelectString ="Select 语句" q.C q.Build MainTable = Tables("外部数据查询")
这时可以看到按条件生成的查询表 [此贴子已经被作者于2012-1-28 22:21:22编辑过]
|
-- 作者:czy -- 发布时间:2012/1/27 9:54:00 -- 加上下面这行代码试试
cmd.ConnectionName = "数据源名称" |
-- 作者:gzdw -- 发布时间:2012/1/27 15:35:00 -- 嗯,等上班时(现在没有网络条件)加上这一句再去试试。 出错的原因还是没有找到外部数据源,需要把查询表指向为外部数据源。 |
-- 作者:gzdw -- 发布时间:2012/1/28 17:36:00 -- 通过一个外部Access数据源的测试,结果如下: 1、如下代码还是找不到外部数据源的{表} Dim ld As Integer Dim cmd As New SQLCommand cmd.CommandText ="查询条件" \'实际需要编写 ld = cmd.ExecuteScalar() MessageBox.Show(ld) \'显示变量值 2、如果在项目中建立一个“外部数据源”,并设定名称为:“测试数据源”,则以下代码可以正常执行 Dim ld As Integer Dim cmd As New SQLCommand cmd.CommandText ="查询条件" \'实际需要编写 ld = cmd.ExecuteScalar()
这样的话,还是达不到完全使用代码来建立外部数据源进行查询的目的,请高手指点。 |
-- 作者:gzdw -- 发布时间:2012/1/28 23:22:00 -- 现在可以了。上面测试时,外部数据源的名称没有清除,程序里一直使用了错误的连接字符串。 使用下面代码检查后,发现是数据源名称没有写正确。 For Each cn As Connection In Connections |