随笔分类 - 关系型数据库
摘要:好久没写点什么了。。。多年前。。。。。。前些时间,与一多年前在北京共事过的略带亲戚关系的同事闲聊了会。在北京那时,他们的主要是用Delphi语言,数据库是MSSqlServer。他没有大学学历,甚至好像高中学历都没有,成长过程比较励志,工厂流水线、理发师、卖东西神马的都干过!!!他是公司的主程,负责...
阅读全文
摘要:没有MySql般方便的limit分页,在MSSQL中需要分页查询数据的话,就只好写存储过程了。。。not in方式的分页性能差,创建变量表的方式相对来说,应该要好些。(MSSQL2000)之前都是获取分页数据、获取数据总数分开写,也就是做两次查询。某天突然想了想,干脆把这两步操作都写到分页查询里,返回分页数据的同时,把数据总数也返回。这么做有什么好处呢? 1、减少一次数据库请求。 2、查询条件很多时,就只需拼一次SQL了。 3、方便维护 4、。。。。。。这几个理由,足够了,那么就实践吧。-- =============================================--...
阅读全文
摘要:在平时的开发中,涉及多表数据联合查询时,一般我都会想当然的Inner Join、Left Join,也经常出现数据量一大查询就特别慢的问题。刚开始还没在意,想当然的以为,数量大了,查询慢是正常的。可又想了一下,对于MSSQL来说,40多万也不算很大啊。。。今天突然想了下,如果不关联表,而是在循环中,需要时再查询数据库,获取其他表的数据。以我目前对SQL的理解: 1、数据量大时,多表关联查询效率确实是不怎么样,还要考虑分页,那就更闹心了。。。 2、循环中单个查询,如果是在C#代码中查询,每次查询都要打开数据库连接、关闭数据库连接,再将数据映射到实体类中,好像效率也不怎么样。。。 3、单个查...
阅读全文
摘要:前段时间,在做一个可以批量审核或删除数据的功能时,遇到这么个问题: 因为审核或删除操作是在存储过程进行的,所以,就打算将选中的数据的主键拼成字符串,传到存储过程进行分离,再继续处理。 C#中和JavaScript中都有相应的分离字符串的Split函数,就想当然的以为SQL中也会有类似的函数,结果查了半天的MSSQL帮助文档,也没找到。 没办法,只好自己写了,在网上搜了下相关的,看了一两篇关于SQL分离字符串的自定义函数的文章,结果,有点失望,可能是自己水平差,或者是因为人家的代码没写注释吧,总之就是看着挺吃力的,还没看完就决定自己写了。。。 思路很简单:在需要分解的字符串中,如果存...
阅读全文
摘要:关于Access数据库执行Update语句后,不报错,但影响行数总是返回0的问
阅读全文

浙公网安备 33010602011771号