应用Oracle9i数据库系统,使用VB6做编程语言,在服务器/客户端方式下。有一数据表A,有100个字段。其中有90个字段的内容存储的是来自其他数据表中(B、C等)的代码。当使用MSHFLexgrid控件进行数据表A的显示时,需将A表中存储的代码到相应的数据表(B、C等)进行转换。现有20条记录。在W2000环境下,计算机为P4-2。8G,512MB内存。运行时间大约5分钟,而在P3中大约要30分钟。如果A表中的记录上万条或十万条以上,恐怕没有人能忍受。请教高手,有什么办法能解决这个问题。谢谢!!
如:
A表:
a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,...a100
---------------------------------------------------
1 2 3 4 5 6 7 8 9 10 x01 x03 x04 y001
B表:
b1, b2
--------
x01 北京
x02 上海
x03 天津
x04 辽宁
...
C表:
c1, c2
-------
y001 钢铁
y002 农业
。。
最后显示结果为:
a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,...a100
---------------------------------------------------
1 2 3 4 5 6 7 8 9 10 北京 天津 辽宁 钢铁
如:
A表:
a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,...a100
---------------------------------------------------
1 2 3 4 5 6 7 8 9 10 x01 x03 x04 y001
B表:
b1, b2
--------
x01 北京
x02 上海
x03 天津
x04 辽宁
...
C表:
c1, c2
-------
y001 钢铁
y002 农业
。。
最后显示结果为:
a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,...a100
---------------------------------------------------
1 2 3 4 5 6 7 8 9 10 北京 天津 辽宁 钢铁
我们用的数据库的数据不比你所描述的简单,从700万条记录里面做统计也只要几分钟;估计还是你写的sql语句有问题或者数据库根本没有设计好,比如索引、表连接什么的……
oracle有很多性能调整是需要使用字符方式在提示符下进行的,不如sql server方便,但是它的效率比sql server高了一个数量级。