首页 › SQLServer

SQLServer

SQLserver2008使用表达式递归查询

SQLserver2008使用表达式递归查询语句,需要的朋友可以参考下。 复制代码代码如下: --由父项递归下级 with cte(id,parentid,text) as (--父项 select id,parentid,text from treeview where parentid = 450 union all --递归结果集中的下级 select t.id,t.parentid,t.t... 继续阅读 »

SQLServer 2008中SQL增强之三 Merge在一条语句中使用

SQL Server 2008提供了一个增强的SQL命令Merge,用法参看MSDN:http://msdn.microsoft.com/zh-cn/library/bb510625.aspx 功能:根据与源表联接的结果,对目标表执行插入、更新或删除操作。例如,根据在另一个表中找到的差异在一个表中插入、更新或删除行,可以对两个表进行同步。 我们看一个例子,假如,有一总产品列表,一个分店产品列表,需... 继续阅读 »

SQLServer2008的实用小道具 merger使用介绍

根据在另一个表中找到的差异在一个表中插入、更新或删除行,可以对两个表进行同步。 A. 使用 MERGE 在单个语句中对表执行 UPDATE 和 DELETE 操作 下面的示例使用 MERGE 根据 SalesOrderDetail 表中已处理的订单,每天更新 AdventureWorks 示例数据库中的 ProductInventory 表。通过减去每天对 SalesOrderDetail 表中的... 继续阅读 »

SQLServer 2008中SQL增强之一Values新用途

SQL Server 2008中新增功能:可以使用单个Insert命令插入多行 复制代码代码如下: Create table Demo_Values (PKID int not null identity(1,1) primary key ,DName Nvarchar(20) null ,DCode NVarchar(30) null ,DDate datetime null ) go --th... 继续阅读 »

SQLServer 2008中SQL增强之二 Top新用途

在SQL Server 2005之前的传统SQL语句中,top语句是不支持局部变量的。 一、TOP替代Set RowCount 在SQL Server 2005之前的传统SQL语句中,top语句是不支持局部变量的。见 http://www.jb51.net/article/27089.htm 此时可以使用Set RowCount,但是在SQL Server 2005/2008中,TOP通常执行得更... 继续阅读 »

SQL Server 2008中SQL之WaitFor使用介绍

在SQL Server 2005以上版本中,在一个增强的WaitFor命令,其作用可以和一个job相当。但使用更加简捷 看MSDN: http://msdn.microsoft.com/zh-cn/library/ms187331.aspx 语法为: WAITFOR { DELAY 'time_to_pass' | TIME 'time_to_execute' | [ ( receive_stat... 继续阅读 »

SQL Server2008 数据库误删除数据的恢复方法

SQL Server2008 数据库误删除数据的恢复方法

今天有个朋友很着急地打电话给我,他用delete语句误删除了SQL Server 2008数据库中两个表中的所有记录,而这个数据库之前没有任何备份。让我帮他解决一下,不然他要赔偿客户很多钱 SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可。但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份。 2. 数据库的恢复模式(Recovery mode)是... 继续阅读 »

SQL Server2008中删除重复记录的方法

在Database中可能由于某种原因如用户输入,导入数据失败等 导致了重复记录. 如果你没有用主键,约束,或来其它机制实现数据完整性,那最后总是重复记录在你的数据库中. 现在让我们来看在SQL SERVER 2008中如何删除这些记录, 首先,可以模拟造一些简单重复记录: 复制代码代码如下: Create Table dbo.Employee ( [Id] int Primary KEY , [N... 继续阅读 »

SQL SERVER 2008 CTE生成结点的FullPath

SQL SERVER 2008 使用CTE是经常的事儿,有时我们想存储一些冗余数据,像每个结点的FullPath。 好的,现在来看如何生成FullPath: 复制代码代码如下: DECLARE @tbl TABLE ( Id int ,ParentId int ) INSERT INTO @tbl ( Id, ParentId ) VALUES ( 0, NULL ) , ( 8, 0 ) , (... 继续阅读 »

SQL server 2008 数据安全(备份和恢复数据库)

SQL server 2008 数据安全(备份和恢复数据库)

备份和恢复数据库对于数据库管理员来说是保证数据安全性的一项重要工作。SQL server 2008提供了高性能的备份和恢复功能,可以实现多种方式的数据库备份和恢复操作,避免了由于各种故障造成的损失而丢失数据 下边是我对部分内容的总结,里边偏向了T-SQL语句实现的总结,对于SQL Server Management Studio中对象管理器的操作并没有太多的总结,因为这些都有一些向导,而且,大部分... 继续阅读 »