php+mysql:为什么从mysql数据库内读取图片显示很慢?

php+mysql:为什么从mysql数据库内读取图片显示很慢?,第1张

数据库的优化涉及三个方面,一是你的程序怎么写的,二是数据库结构怎么设计,三是你的数据库情况怎样(数量、差异规则)。

一般说来,如果你是数据较多,必须建立合理的索引,而且查询语句要按照索引来查询。

而从数据库里面获取图片并显示的基本方式,我想只有一种模式,只要你能显示就不存在错误。当然你可以贴出代码大家看看。

补充:

恐怕你上面的语句是简化了的,而且把关键部分简化掉了,完全相当于没有贴。你下面这个语句:

$result=mysql_query("select

*

from

image",$conn)

里面应该有一个类似where

id=$id这样的条件,然后把id字段设置为主键,速度可以提高数十倍,除非你表里面只有一条记录。

从数据库读取图片是个相当不理智的选择。你想读取快速就要在SQL Server上写存储过程,命名主键,然后直接用SqlClient访问你做好的视图,而不是利用SqlClient做解析、做连接查询等工作。因为他的计算效率依赖于网络,要分析也是从SQL读取表到本地,然后本地边读取边去查询远程表,这能不慢吗,写多了你慢慢会发现:

在SQL Server上做好查询视图,C#直接访问远远比C#分析快

用代码来做数据库 *** 作远远比自带的控件灵活快速

其实连接一样的你打开一次就足够了,程序Exit自然关闭,当你程序初始化的时候就openlink打开数据库连接,后面再去公用这个连接,程序关闭C#回收垃圾机制会销毁。不需要你真的去try打开他catch异常,flinnly关闭,不知道大家有没有发现连接数据库也需要时间的,关闭它也是浪费时间的。

触发器和同步用SQL Server代理去做,每日做好计划代理就OK

不要真的去把数据库发布到外部网络,在设备允许范围你会发现这是一个很蠢的事情,通过webservice或者WEB来 *** 作来自外网服务器的数据库。

用linkq解决很多问题,list<>远远比Arraylist要快,Arraylist依赖系统缓存,当你数据量超出系统缓存的时候,你会发现各种错误各种卡...

借助dataGridView,他其实是个好东西,你把数据存进去,再去交叉分析其他数据,会事半功倍,永远不要在C#里使用Select *,   连接查询 ,游标,检索ID,你会发现真的很呆


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9879071.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存