如何提高连接sql server的速度? ( 积分: 100 )

  • 主题发起人 主题发起人 fox_s
  • 开始时间 开始时间
F

fox_s

Unregistered / Unconfirmed
GUEST, unregistred user!
我用sql server数据库存储图片,超过5万条记录,数据库大小约3个G左右,这时再连接数据库就变的非常非常的慢,有什么好的办法吗?谢谢,我是用ADOConnection1.Connected:=true;来连接的
 
把图片从数据库分离出来
 
是啊,最好还是把图片分出来放在某一台非数据库服务器上,只存路径,最后通过路径来查找图片,占用空间小,速度也快
 
连接应该不会慢.
关键是取数慢.
取数时可以先不取图. select id from table
客户要看图时, 再根据Id值取回所要的一张或几张图.
另外图片, 数据分离应该更合理
 
如果是都存成图片到是个办法,但是那还要sql server数据库干什么呢,完全可以用delphi自带的paradox7来存储个序号,然后查找就行啊
 
只是一个建议. 这样数据库的备份恢复都比较容易.
连接数据库应该和数据库的大小无关.
如何合理取数才是重要的. 少量多次是一个原则.
 
连接不会慢,关键是操作数据库的语句执行的可能慢,看看有没有select * form table之类的
 
同意,僅僅連接不會慢的,只是查詢才會顯示慢
 
同意 mingzy的说法。

另外SERVER端做一下数据压缩,把LOG文件给压小点试试。
 
select 语句中只指定需要的字段,当需要其它字段时通过相应ID抓出来.
 
图片问题 。
主要有两种思路:
1。图片文件保存到数据库:这种方法是将图片文件以二进制形式保存。这种方法不但可以保存图片还可以保存电影啊优点:保密性强;致命缺点:如果图片很多会造成数据库臃肿。
2。保存图片的绝对路径
这种方法只是保存文件的绝对路径到数据库,在访问时读取路径然后。。
优点:简单,快速 缺点:保密问题比较突出(误操作等)
建议: 如果图片数量不是很大建议内部保存

用DBImage控件只能显示bmp图像,一个图像用bmp格式要用0.5M-几M空间,jpeg格式只有几十至几百kB。如果图片较多,用DBImage控件显示,其程序大小是个问题。
一个程序保密要性强,也要考虑安装问题,保存图片的绝对路径,是否考虑安装的盘符。

图片问题,详见
http://www.delphibbs.com/keylife/iblog_show.asp?xid=27546
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
855
SUNSTONE的Delphi笔记
S
S
回复
0
查看
783
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部