`
lexinquan
  • 浏览: 47166 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
基于SAE的快递查询网站:http://kuaidi001.sinaapp.com   欢迎TXM测试提出建议!

SQL With Nolock

with nolock 相当于 READ UNCOMMITTED事务隔离级别. 注: ---------------------------------------------- READUNCOMMITTED                   指定允许脏读。这表示不发放共享锁,也不遵守排它锁。允许脏读会导致更高的并发性,但会降低一致性。如果指定了       READUNCOMMITTED,就有可能读取未提交的事务,或读取在读取过程中回滚的一套页,因此可能出现错误信息。 ---------------------------------------------- 优点: sql查询 ...
开发语言:Python 框架:django 托管服务器:Google云   GAE(google app engine) 地址:http://lexinquan.appspot.com
微软Visual Web Developer 2010 Express是一款免费的开发环境,可以用来创建、测试和部署Web应用程序,支持ASP.Net、IIS、SQL Server等微软Web平台,微软正式提供了Visual web Developer 2010 Express的免费下载。   有了Visual Web Developer 2010 Express,你可以使用Web Standards、JavaScript和ASP.NET,可以使用各种新兴Web技术创建应用程序,包括AJAX、Silverlight等。Visual Web Developer 2010 Express还整合了调试 ...
百度BMap API发布,和google map 相差不大,万一哪天google map停了,比较容易切换到百度的了,不知百度以后会不会收费,估计服务那一块可能性比较大。 刚刚试用了一下,有两点注意: 1.要加载缩略图,标尺控件位置需注意 放在 map.centerAndZoom(point,15);后面,否则 this.centerPoint 为null。 2. 要使用服务API,注意 &services=true。 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> ...
1、数据库索引创建检查。包括:(a)索引字段应为差异性较大、长度较小的类型,枚举类型字段不要建索引;(b)防止创建包含过多字段的复合索引;(c)索引字段的值不要出现过多空值或重复值。 2、数据库索引使用检查。 ...
1、所有的SQL exception 信息都不能直接返回给客户端。 2、在任何情况下使用完Connection后都要释放连接,特别是在抛出异常的时候也要释放Connection。 3、表中的用户敏感信息要加密存储,最好在加密的时候加入几位随机数。 4、所有的数据库访问都用preparestatement的方式或者封装为存储过程。 5、配置文件中的数据库访问用户名和密码都加密并编码存放。 6、系统上线运行时,仅给数据库用户必要的权限。
1、缓存数据库配置、枚举定义表信息,减少对数据库的访问。 2、使用连接池,并且控制最大连接数。 3、数据库访问都通过存储过程实现,尽量不要直接操作表。 4、如果一个业务多次调用不同的存储过程,可以考虑合并在一个存储过程中,减少数据库访问。 5、合并业务请求,同类型请求合并成一个大请求,提交给数据库。 6、应用程序使用内存缓存操作极其频繁的表,缓存的内容可以精简,但要注意数据同步更新问题。 7、在一个业务逻辑处理中,如果多次运用同样的prepareStatement,那就尽量只创建一个statement并重复使用。 8、在释放连接的时候,如果连接处于事务状态,一定要rollback ...
1、数据库访问,最好全部固化成存储过程,保存在数据库中。同时尽量不使用trigger机制,难以管理及查错。 2、数据库操作时,仅选择有用列。除非有充足理由,不应该出现select * 的形式。 3、存储过程中尽量少用会引起存储过程重新编译的脚本,例如:动态sql语句、临时表、DDL语句。 4、以DB2为例,只读操作加上for fetch(read) only,如果只需要检索结果的几个,可以加上order by,fetch first x rows语句。 5、存储过程尽量精简,只实现简单IO,业务逻辑编放在中间层实现。 6、对于多个小更新操作,可以把所有更新放入一个批处理中,避免多次提交 ...
1、索引应该有足够的区分度,对区分度不大的列(例如枚举类型字段),不应该做索引(这时候应该考虑加上诸如时间范围这样的限制条件对记录进行筛选)。对一个表中最影响性能的列,可以考虑做聚簇索引。 2、小表少建索引或不建索引,可以加载到内存中访问。 3、索引字段一般为差异性较大、长度较小的类型,在这些字段上经常做一些选择性查询、排序、分组、关联操作。外键作为表关联字段,如果常作关联查询,可以建索引。 4、对于频繁更新及插入的数据表,定义索引不宜过多,同时可以考虑适当保留空闲索引空间,也就是说让数据不连续,提高索引键更新及插入效率。 5、办公系统中,对一个表可能有很多筛选项,且不是必选项。所以,倾 ...
1、定义一些字典表,在命名字段并为其指定数据类型的时候要保证一致性,可以在字典表里定义常用字段的名称、类型、枚举值及其对应的意思。枚举值可以用整型(有大小关系,例如:权限级别)或短字符代码(便于扩充,例如:渠道标识),这样在实际表记录中字段值可以较小,对于大表可以省空间,同时提高表扫描的效率。 2、尽量不要使用auto_increment类型字段作为主键,这样会使分布、备份、还原有一定的问题。 3、如果表中的数据会经常变动,一定要加上“最近更新日期/时间”字段,对于频繁变动的记录,还可另外再加一个变更日志表。变更日志表一般在查错或事后审核时用,所以在实时系统里该表可以不加任何主键及索引,提高 ...
1、对使用数据库的系统进行分类:联机事务处理系统OLTP,联机分析处理系统OLAP。针对OLTP和OLAP系统特性的不同,分离实时数据库与非实时数据库,除非必要的查询,所有的查询尽量放在非实时数据库上。可以用相关数据库产品 ...
(1)      选择最有效率的表名顺序(只在基于规则的优化器中有效): ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表. (2)      WHERE子句中的连接顺序.: ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前, 那些 ...
增加、编辑、删除等功能,几乎每个系统都会用到,针对这几个方面,写如下测试用例 一:增加 1:在添加页面,输入要添加的数据项均合理,检查数据库以及列表页是否添加了相应的数据 2:在添加页面,留出一个必填项为空,检查是否会提示 3:按照边界值等价类设计测试用例原则设计其他输入项测试用例 4:不符合要求的地方要有错误提示 5:是否支持table键 6:按enter是否能保存 7:若提示保存,也要查看数据库里是否多了一条数据 二、删除 1、删除一个数据库中存在的数据,然后查看数据库以及列表也中是否删除 2、删除一个数据库中并不存在的数据,看是否有错误提示,并且数据库中没有数据被删除 3、输入一个格式错误 ...
在template中使用中文时,会出现UnicodeDecodeError,原因是网页编码可能是gb2312.将网页源码然后直接复制到记事本,保存文件的时候编码是ANSI,这样在读取模板的时候就出了问题。解决的办法是,在复制代码前,把浏览器编码改为UTF-8,复制后记事本点另存为,编码选UTF-8,这样就正常了。
Global site tag (gtag.js) - Google Analytics