1.设置使用事务的SQL执行语句 /// <summary> /// 使用有事务的SQL语句 /// </summary> /// <param name="sql"></param> /// <param name="conn"></param> /// <param name="tran"></param> /// <returns>&…
来源:http://www.sqlservercentral.com/articles/Stairway+Series/73785/ 作者:Tony Davis, 2012/01/27 翻译:刘琼滨.谢雪妮.许雅莉.赖慧芳 译文: 该系列 本文是楼梯系列的一部分:SQL Server中的事务日志管理的阶梯 当事情进展顺利时,没有必要特别注意事务日志的作用或它是如何工作的.您只需要确信每个数据库都有正确的备份机制.当事情出错时,对事务日志的理解对于采取纠正措施非常重要,特别是当需要一个时间点的数据…
源自: http://www.sqlservercentral.com/articles/Stairway+Series/73779/ 作者: Tony Davis, 2011/09/07 翻译:刘琼滨 谢雪妮 许雅莉 赖慧芳 译文: 该系列 本文是楼梯系列的一部分:SQL Server中的事务日志管理的阶梯 当事情进展顺利时,不需要特别意识到事务日志是做什么的,或者它是如何工作的.您只需确信每个数据库都有正确的备份机制.当事情出错时,对事务日志的理解对于采取纠正措施是非常重要的,特别是当需要一…
[编者按]还在为管理 Java 代码中的 SQL 语句而烦恼吗?让 Zemian 帮你摆脱困境吧!本文系 OneAPM 工程师编译整理 注意:使用java.util.Properties#loadFromXML其实会更简单! 如果使用的是普通的.没有任何外部类库的 Java JDBC,那么就必须得自己去管理 SQL 语句.很不幸的是,Java String 并不支持多行结构,所以开发者必须使用许多引号+连接符来拼接语句,这会使得 SQL 语句非常难于阅读和管理.同时,这也使得维护和测试(尝试从…
SQL Server中的事务日志管理的阶梯,级别1:事务日志概述 翻译:刘琼滨 谢雪妮 许雅莉 赖慧芳 级别1:事务日志概述 事务日志是一个文件,其中SQL服务器存储了所有与日志文件关联的数据库执行的所有事务和数据修改的记录.如果发生了导致SQL服务器意外关闭的灾难,比如实例或硬件故障,则使用事务日志恢复数据库,并在tact中使用数据完整性.在重新启动时,数据库进入一个恢复过程,其中读取事务日志以确保所有有效的.提交的数据被写入到数据文件(向前滚),以及任何部分.未提交的事务被撤销(回滚).简而…
原文:SQL Server中存储过程比直接运行SQL语句慢的原因 在很多的资料中都描述说SQLSERVER的存储过程较普通的SQL语句有以下优点: 1.       存储过程只在创造时进行编译即可,以后每次执行存储过程都不需再重新编译,而我们通常使用的SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度. 2.       经常会遇到复杂的业务逻辑和对数据库的操作,这个时候就会用SP来封装数据库操作.当对数据库进行复杂操作时(如对多个表进行 Update,Insert,Query…
SQL Server中一些有用的日期sql语句 1.一个月第一天的 SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 2.本周的星期一 SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) 3.一年的第一天 SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) 4.季度的第一天 SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()),…
最近这两天在使用控制台程序学习EFCore,突然想看看生成的SQL语句,所以在网上找到一位大神的分享的方法! 准备工作: 1). MySqlEFCore NuGet:   Pomelo.EntityFrameworkCore.MySql     (要2.0.0版本或与下面的NuGet包版本一致)   2). 查看sql语句的扩展包: Pomelo.EntityFrameworkCore.Extensions.ToSql -Version 2.0.0-rtm-10002  (建议使用install…
postgres中几个复杂的sql语句 需求一 需要获取一个问题列表,这个问题列表的排序方式是分为两个部分,第一部分是一个已有的数组[0,579489,579482,579453,561983,561990,562083] 第二个部分是按照id进行排序,但是需要过滤掉前面已有的数组. 最开始的时候我大概是想这么写的: select * from question where id = any( array_cat( ARRAY[0,579489,579482,579453,561983,5619…
我们知道SqlServer的查询优化器会将所执行的Sql语句的执行计划作缓存,如果后续查询可以复用缓存中的执行计划,那么SqlServer就会为后续查询复用执行计划而不是重新生成一个新的执行计划,因为复用执行计划的性能比生成执行计划的性能要高很多,所以SqlServer的这一特性可以大大提高Sql语句的执行效率.特别是对于存储过程,因为存储过程的执行计划是在存储过程第一次执行的时候生成的,存储过程的执行计划生成后就会被缓存到SqlServer的执行计划列表中,如果以后存储过程再被执行,那么存储过…