连结字符串是:
"Provider=MSDASQL.1;Persist Security Info=False;Extended Properties='DSN=aabbcc;SRVR=bbccdd;DB=mydb;UID=sa;PWD=1234'"查询语句是:
SELECT WORK.TIME AS DATE,WORK.NE AS NAME,WORKROOM.MM,WORKROOM.CC,WORKROOM.DD,WORKROOM.KK FROM WORKROOM LEFT JOIN WORK ON WORKROOM.ID=WORK.ID WHERE WORK.TIME='2012-5-21 17:00' AND WORK.NE='COFFEE' AND WORKROOM.MM LIKE'%XXX%'我换过很多查询语句,无论是查很多表的还是查两个表的,都慢得要命,超过5分钟,而且每次查询,程序产生的流量都是1G左右或者更大的流量(从360流量防火墙上发现这问题的),但是返回的结果有时候才几十条电脑里安装了SYBASE的ODBC,没有安装完整的SYBASE 11,所以ODBC里只能添加SYBASE ASE ODBC DRIVER
无论我查询的语句是什么,效果都是一样的,难道SYBASE ASE ODBC就那么的慢?有没有解决办法?
"Provider=MSDASQL.1;Persist Security Info=False;Extended Properties='DSN=aabbcc;SRVR=bbccdd;DB=mydb;UID=sa;PWD=1234'"查询语句是:
SELECT WORK.TIME AS DATE,WORK.NE AS NAME,WORKROOM.MM,WORKROOM.CC,WORKROOM.DD,WORKROOM.KK FROM WORKROOM LEFT JOIN WORK ON WORKROOM.ID=WORK.ID WHERE WORK.TIME='2012-5-21 17:00' AND WORK.NE='COFFEE' AND WORKROOM.MM LIKE'%XXX%'我换过很多查询语句,无论是查很多表的还是查两个表的,都慢得要命,超过5分钟,而且每次查询,程序产生的流量都是1G左右或者更大的流量(从360流量防火墙上发现这问题的),但是返回的结果有时候才几十条电脑里安装了SYBASE的ODBC,没有安装完整的SYBASE 11,所以ODBC里只能添加SYBASE ASE ODBC DRIVER
无论我查询的语句是什么,效果都是一样的,难道SYBASE ASE ODBC就那么的慢?有没有解决办法?
解决方案 »
- vb实现计算器backspace功能
- 求教VB修改文本文件内容(交换行号)的一个问题
- 求助mciSendString,为什么播放完后重新播放,却什么也看不到?
- 在VB6中怎样插入ctl控件?
- 请教,GetDIBits将BMP信息读入数组时在98下失败?难道是gdi32的问题吗?(困扰1年了)
- ADO连接SQL SERVER 怎样设置connectionstring ??
- 怎样关闭主窗体时只是隐藏他,而不是退出程序,在线等待!没分了见谅!
- 请问为什么安装制作软件生成的文件都不是EXE而是其他格式
- 下面是一个判断网址是否否存在的代码,如果要是遍历所有的窗口网址的话就会出现假死,我想加上一个超时设置,请高手帮助最后40分了
- 请问在vb开发环境中运行程序怎样给要运行的程序加参数
- 求大侠分析一下该函数为何执行速度太慢
- VB 语法问题?
你的连接串看起来象通过 MSDASQL.1 代理间接访问 DSN=aabbcc,怎么会不慢!
或者不需要 ODBC 直接指定 "Driver={SYBASE ASE ODBC Driver};Srvr=bbccdd;DB=mydb;UID=sa;PWD=1234;"
我也想用ADO直接连,怎么连?搜不到相关的方法
我用下面这个连接字符串试过的,一样的效果
PROVIDER=MSDASQL.1;dsn=aabbcc;uid=sa;pwd=1234;database=mydb; 你说的不需要ODBC,直接去连:"Driver={SYBASE ASE ODBC Driver};Srvr=bbccdd;DB=mydb;UID=sa;PWD=1234;"提示的是实时错误80004005
[datedirect] [odbc sybase wire protocol driver] insufficient information to connect to the data source很多连接的方法我都试过,凡是可以连接成功的,都是一个效果,时间是5到10分钟,数据流量是1-2G,简直是可怕,拿SQLDBX软件选择ODBC方式查得挺好的(1分钟以内,数据流量跟查询返回的结果差不多,几兆而已),查询语句一模一样,效果天差万别据说PB查询这个也超级快的
我主要就是查询,也不干别的什么,怎么可以这样慢?我哪里弄错了呢?
不要 PROVIDER=MSDASQL.1
11 是 Driver={SYBASE SYSTEM 11};
12 才是 Driver={SYBASE ASE ODBC Driver};
要或者不要PROVIDER=MSDASQL.1,效果都是一样的,流量巨大,时间超慢,而我的查询语句仅仅是查2个表,用不用JOIN都是一样的效果,返回的内容才几十行,居然要10分钟,2G的流量
找干净的机器或虚拟机安装 Sybase 11 的客户端再试试。
真是悲剧,同样的环境下,SQLDBX这个绿色软件为什么可以高效的查询,VB6的ADO却做不到呢?
实在不理解为什么数据流量那么大耗时那么久,结果却可以正确的返回,肯定是有什么没有考虑到的
原来是1,3,不行,改了其它参数进行尝试,就好了
以前倒是碰到过 Sybase 用 ODBC 访问不支持某些常用的游标类型、锁类型,搞得 ADO 访问居然不能自适应不同数据库,非要单独编写特别的版本。
不过没有碰到过数据流量暴增的情况,Sybase 真是神奇啊!