Foxtable(狐表)用户栏目专家坐堂 → [求助]能否给个动态加载基于SQL SERVER 的NORTHWIND数据库的例子


  共有21086人关注过本帖树形打印复制链接

主题:[求助]能否给个动态加载基于SQL SERVER 的NORTHWIND数据库的例子

帅哥哟,离线,有人找我吗?
jgc1010
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:94 积分:952 威望:0 精华:0 注册:2009/3/5 16:10:00
[求助]能否给个动态加载基于SQL SERVER 的NORTHWIND数据库的例子  发帖心情 Post By:2009/3/18 12:18:00 [只看该作者]

不好意思,动态加载数据的问题已问得很多了,但是还是不能解决我的问题。你举的例子一是内部表,二是ACCESS外部表。而我是要动态加载SQL SERVER外部表的大量数据,因而采用你的例子中的代码还是报错,不能运行。我以SQL SERVER 自带的示例数据库NORTHWIND为例。
1)、目录树的NodeMouseDoubleClick代码:其中加颜色部分报错。
Dim Value() As String
Value = e.Node.FullPath.Split("\")
Select Case e.Node.Level
    Case 0
        Tables("Orders").Filter = "[shipCountry] = '" & Value(0) & "'"
    Case 1
        Tables("Orders").Filter = "[shipCountry] = '" & Value(0) & "' And [customerID] = '" & Value(1) & "'"
    Case 2
        Tables("Orders").Filter = "[shipCountry] = '" & Value(0) & "' And [customerID] = '" & Value(1) & "' And [EmployeeID] = '" & Value(2) & "'"
End Select
DataTables("Orders").LoadFilter = Filter
DataTables("Orders").Load()
因此双击节点没有反应。
2)、你说要用个临时表,不知怎么创建?
能否给个基于SQL SERVER 的NORTHWIND数据库的例子。谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/3/18 12:27:00 [只看该作者]

呵呵,为什么不告诉我错误提示是什么呢?
有的时候,一看错误提示,就知道怎么回事的。
最好将提示错误信息的窗口,抓图发上来。

在下面的语句之前:
DataTables("Orders").LoadFilter = Filter

加一句
MessageBox.Show(Filter)

看看你生成的表达式是什么,这个地方报错,只有一个原因,条件表达式语法有误

也许你的customerID和customerID如果是整数型,那么是不能用单引号的,应该是:

Tables("Orders").Filter = "[shipCountry] = '" & Value(0) & "' And [customerID] = " & Value(1) & " And [EmployeeID] = " & Value(2)
[此贴子已经被作者于2009-3-18 12:28:54编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/3/18 12:42:00 [只看该作者]

下面的代码,在SQL SERVER下通过测试的,比对一下,就知道你原来为什么不行了,你将筛选和动态加载搞混了:

Dim
Value() As String
Dim
Filter As String
Value = e.Node.FullPath.Split(
"\")
Select
Case e.Node.Level
     Case
0
         Filter =
"[shipCountry] = '" & Value(0) & "'"
    
Case 1
         Filter =
"[shipCountry] = '" & Value(0) & "' And [customerID] = '" & Value(1) & "'"
    
Case 2
         Filter =
"[shipCountry] = '" & Value(0) & "' And [customerID] = '" & Value(1) & "' And [EmployeeID] = " & Value(2)
End
Select
DataTables
("Orders").LoadFilter = Filter
DataTables
("Orders").Load()
[此贴子已经被作者于2009-3-18 12:42:04编辑过]

 回到顶部