利用SQL Server触发器实现表的历史修改痕迹记录

在很多应用程序开发中,需要记录某些数据表的历史记录或修改痕迹,以便日后出现数据错误时进行数据排查。这种业务需求,我们可以通过数据库的触发器来轻松实现历史记录功能。

本文以SQL Server 2005数据库中的触发器为例(因为手中的项目用的就是这个数据库)
继续阅读 “利用SQL Server触发器实现表的历史修改痕迹记录”

MySQL日期、字符串、时间戳互转

平时比较常用的时间、字符串、时间戳之间的互相转换,虽然常用但是几乎每次使用时候都喜欢去搜索一下用法;本文将作为一个笔记,整理一下三者之间的转换(即:date转字符串、date转时间戳、字符串转date、字符串转时间戳、时间戳转date,时间戳转字符串)用法,方便日后查看;
继续阅读 “MySQL日期、字符串、时间戳互转”

对SQL文中join、left join、right join的理解

有时为了得到完整的查询结果,我们需要从两个或更多的表中获取结果。这是就需要执行 join。
数据库中的表可通过键将彼此联系起来。主键(Primary Key)是一个列,在这个列中的每一行的值都是唯一的。在表中,每个主键的值都是唯一的。这样做的目的是在不重复每个表中的所有数据的情况下,把表间的数据交叉捆绑在一起。 继续阅读 “对SQL文中join、left join、right join的理解”

SQL Server中varchar转datetime和Convert函数

在实际数据库引用中,可能会出现使用varchar类型存储时间(如:2014-01-02)或者存储年月(如:2014-02),但在做数据查询的时候,可能会通过日期大小的比较来查询数据。这时我们需要通过数据库的内置函数将varchar类型转成datetime类型后进行比较。 继续阅读 “SQL Server中varchar转datetime和Convert函数”