这个数据库结构有没问题? 本帖最后由 tansx 于 2013-05-04 10:49:59 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 数据库设计没有问题查询建议不要使用视图,没有索引,查询速度很慢。查询的where 字段创建索引http://www.cnblogs.com/worfdream/articles/2840582.html 是要多次出库。出库时从入库中查找对应的条码,并在找到的记录中填写出库单的单号。如:入库中有箱号为001和002的记录,现在要出库的箱号为002,在出库保存时,从入库表中查找箱号为002的记录,如果找不到则提示要出库的箱号不存在,如果找到了,则更新该记录的Yout(出库标志)和OutBill(出库单号)。 1、你的where条件限制只查每天的数据吗?如果不是,那么就会有一个问题:入库主表*入库明细表*出库主表*出库明细表,CPU要对这么多的数据进行匹配,如果这些链接字段都没索引,那查询超时是很正常的。2、一般视图只是为了隐藏关键字段和提高代码的可视性,对性能没有任何提高,查询的时候,你要尽量的只查询自己需要的字段。3、如果4个表的数据量大,就进行分区,这样也可以减少io读取。 where条件限制不只查每天的数据。请问:1、我在四个表中设置了索引。在视图或where时还能进行索引吗?2、SQL2000能进行分区吗?如何分?谢谢! 在连接字段建立索引,视图和where还能进行索引,T-SQL的执行顺序是:from 表,然后join on ,多个jion on 查询分析器会迭代处理,然后是where,如果where条件上面有索引就按索引走,视图在查询时,查询分析器会转义成T-SQL语句。SQL2000我没用过,应该可以分区吧。 请教你是说在代码中的where后加索引吗?请问如何加? 设计上大体没什么问题,如果你已经设计好过表,程序也设计了,再从设计上修改,工程量比较大。建议是先看是哪位置引起查询慢,检查下执行计划,从执行计划去分析。如果执行计划没问题,在服务器端查询也都没问题,可能是要从别的方面考虑,如网络,程序接口等。从语句上优化完了,再从磁盘读写方面去优化,是否需要升级硬件来提升。SQL Server 2005在性能優化方便是比2000的要好,有表分区功能,同时要评估表分区管理和维护难度。http://msdn.microsoft.com/zh-cn/library/ms345146(v=sql.90).aspx 一般数据库多少个文件组,多少个数据文件比较合适? 以下sql语句如何写? sql 降序 为空在后 过滤字符 把几张表中的字段插入到一张表中 如何把sql server数据库的表结构和数据同时生成一个sql脚本阿? 该内嵌函数为什么报错? 关于存储过程的,请高手给个完整的解答 sql 数据库在相互注册时,总是出现timeout,如何解决 接上一问题:企业内部局域网使用客户/服务器数据库程序(vb/sql server),如果让在外地的职员通过因特网查询企业内部销售数据,开发axtive X文档能否满足这一要求? 高难度,疑难杂症,等待民叫高手 神医! 求一表结构设计
查询建议不要使用视图,没有索引,查询速度很慢。
查询的where 字段创建索引
http://www.cnblogs.com/worfdream/articles/2840582.html
2、一般视图只是为了隐藏关键字段和提高代码的可视性,对性能没有任何提高,查询的时候,你要尽量的只查询自己需要的字段。
3、如果4个表的数据量大,就进行分区,这样也可以减少io读取。
请问:
1、我在四个表中设置了索引。在视图或where时还能进行索引吗?
2、SQL2000能进行分区吗?如何分?
谢谢!
T-SQL的执行顺序是:from 表,然后join on ,多个jion on 查询分析器会迭代处理,然后是where,如果where条件上面有索引就按索引走,视图在查询时,查询分析器会转义成T-SQL语句。SQL2000我没用过,应该可以分区吧。
建议是先看是哪位置引起查询慢,检查下执行计划,从执行计划去分析。如果执行计划没问题,在服务器端查询也都没问题,可能是要从别的方面考虑,如网络,程序接口等。
从语句上优化完了,再从磁盘读写方面去优化,是否需要升级硬件来提升。SQL Server 2005在性能優化方便是比2000的要好,有表分区功能,同时要评估表分区管理和维护难度。
http://msdn.microsoft.com/zh-cn/library/ms345146(v=sql.90).aspx