一般说来,如果你是数据较多,必须建立合理的索引,而且查询语句要按照索引来查询。
而从数据库里面获取图片并显示的基本方式,我想只有一种模式,只要你能显示就不存在错误。当然你可以贴出代码大家看看。
补充:
恐怕你上面的语句是简化了的,而且把关键部分简化掉了,完全相当于没有贴。你下面这个语句:
$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,你会发现真的很呆
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)