如果是SQL 2005 或 2008.运行下面的代码.就可以看到从上次启动SQL 服务以来,某个表的使用情况,包括select/update/delete/insert. SELECT * FROM sys.dm_db_index_usage_stats WHERE database_id = DB_ID( 'YOUR_DATABASE_NAME') 上述语句会得到最近的更新表的一些信息,其中就包括我们要的的最后更新日期 查询后的结果中列object_id的值就是我们要的表的id,根据表的id我…
在SQL Server中,如何找到一张表或某个索引拥有那些页面(page)呢? 有时候,我们在分析和研究(例如,死锁分析)的时候还真有这样的需求,那么如何做呢? SQL Server 2012提供了一个无文档的DMF(sys.dm_db_database_page_allocations)可以实现我们的需求,sys.dm_db_database_page_allocations有下面几个参数: ·         @DatabaseId:    数据库的ID,可以用DB_ID()函数获取某个数据…
其步骤就是:利用update操作触发器产生的2个虚拟表[inserted]用来存储修改的数据信息和[deleted]表,然后将对应的数据更新到对应数据表中的字段信息中: 1.首先创建3个表: a.信息表: 1 USE [SQL-LI] 2 BEGIN TRANSACTION CHUANGJIAN_XINXIN_TAB 3 --创建命名为[XINXIN_TAB]的数据表,同时不允许字段为空 4 CREATE TABLE XINXIN_TAB 5 ( 6 姓名 NVARCHAR(10) NOT NU…
在项目中使用SQL Server 2000创建了一个数据库,发现名称与另一个数据库太相似,于是决定更改名称,包括: 在企业管理器中看到的数据库名,也是实际应用程序中连接用的数据库名称: 在磁盘上看的物理名称. 根据国内外找到的技术资料,给出完整的SQL脚本代码如下(原库名为abc.修改为abc2): use master  Go --1) 创建数据库(原始数据库abc)create database abc on(name='abc', filename='d:/abc_data.mdf')  …
怎么样把sql server 2000的用户表的所有者,改成dbo,而不是用户名. 推荐使用下面介绍的第二种方法,执行以下查询便可以了.sp_configure 'allow updates','1' go reconfigure with override go update sysobjects set uid=1 where uid<>1 go sp_configure 'allow updates','0' go reconfigure with override 注意:上面的查询语句…
一.系统表 数据字典的详细信息请查SQL SERVER BOL,这里仅列出一部分. 1.1.sysservers 1.查看所有本地服务器及链接服务器 select * from master..sysservers 1.2.sysdatabases 1:查询非sa创建的所有数据库 select * from master..sysdatabases where sid not in(select sid from master..syslogins where name='sa') --或者 s…
今天项目经理跑过来对我大吼大叫说什么之前安排让我做一大堆接口为什么没做,我直接火了,之前明明没有这个事情…… 不过事情还要解决,好在两个项目都是用的sqlserver,可以通过跨数据库视图来快速解决问题,省去了一大堆工作.如何做呢?看下文吧. 正 文: 有的时候,我们要访问其它 SQL Server的数据库,我们可以通过一个视图使用 OPENDATASOURCE (SQL Server 2000 以上版本支持) 来完成.   例如: Create VIEW [dbo].[vTableName]…
---SQL SERVER 2000 遍历父子关系數據表(二叉树)获得所有子节点 所有父节点及节点层数函数---Geovin Du 涂聚文--建立測試環境Create Table GeovinDu([ID] Int, fatherID Int, [Name] Varchar(10))Insert A Select 1, 0, '中国'Union All Select 2, 1, '广东'Union All Select 3, 1, '北京'Union All Select 4, 2, '深圳特区…
--Sql Server 2000 declare @id int, ), ) declare cur_1 cursor for select id,name from sysobjects where xtype='U' --and id=537768973 open cur_1 fetch cur_1 into @id,@name ) begin if exists(select * from tempdb..sysobjects where id=object_id('tempdb..##…
[文章摘要]最近做的一个项目要获取存在于其他服务器的一些数据,为了安全起见,采用由其他“服务器”向我们服务器推送的方式实现.我们服务器使用的是SQL Server 2008 R2,其他“服务器”使用的都是SQL Server 2000,还都是运行在Windows XP上的,整个过程遇到了一些问题,也参考了一些文档,最终费了好多事才算搞定. [文章索引] 配置分发服务器 配置发布数据库 配置订阅 [一.配置分发服务器] SQLServer 2000的复制服务包括三个角色:发布服务器.分发服务器和订…