以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问直接对远程oracle数据视图的统计应该怎样写?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=15528)

--  作者:gzdw
--  发布时间:2011/12/29 20:40:00
--  请问直接对远程oracle数据视图的统计应该怎样写?

我查了帮助说明,涉及这方面的内容不是讲得很细,测试了几次都不是很成功。

我设想这样做:

1、在foxtable的项目中设置好外部数据源(如能在程序运行时添加则更方便,便于没有网络时调试)。

2、不加载数据,直接从后台统计符合某个条件的记录数(计数),如

   select count(字段)from 数据库.表 where 条件

3、把此计数结果存入到一个变量中。

 

以上需要用代码来实现。因为这个操作是放在一个窗口的按钮中。

[此贴子已经被作者于2011-12-29 20:48:49编辑过]

--  作者:don
--  发布时间:2011/12/30 7:29:00
--  

SQLCommand

这个类用于执行SQL命令。

属性:

  • CommandText
    字符型,用于设置SQL命令。
     
  • ConnectionName
    字符型,用于指定数据源名称,如果省略,则使用内部数据源。
     
  • CommandTimeOut
    设置超时时限,默认为30秒,一般不需要设置此属性,除非需要进行非常耗时超过30秒的操作,以至于出现超时错误,此时可适当地加大CommandTimeOut属性的值。

方法:

ExecuteScalar

用于执行返回单个值的命令,例如:

Dim
ld As Date
Dim
cmd As New SQLCommand
cmd.CommandText =
"Select Max(日期) From {订单} Where 产品 = \'PD01\'"

ld = cmd.ExecuteScalar()


--  作者:gzdw
--  发布时间:2011/12/30 15:32:00
--  

这个我在命令窗口试过,执行到

cmd.CommandText = "Select Max(日期) From {订单} Where 产品 = \'PD01\'"

这行时说超长了,出错。


--  作者:don
--  发布时间:2011/12/30 15:34:00
--  

CommandTimeOut

设置超时时限,默认为30秒,一般不需要设置此属性,除非需要进行非常耗时超过30秒的操作,以至于出现超时错误,此时可适当地加大CommandTimeOut属性的值。

--  作者:狐狸爸爸
--  发布时间:2011/12/30 15:34:00
--  

将SQLCommand的CommandTimeOut属性设置得长点看看。
 
 CommandTimeOut
设置超时时限,默认为30秒,一般不需要设置此属性,除非需要进行非常耗时超过30秒的操作,以至于出现超时错误,此时可适当地加大CommandTimeOut属性的值。