今天数据库对入职一年的我建立了独立的数据库账号,之前我是和其他同事共享的,之前的所有者账号被废弃了,这时导致很多数据库作业执行失败. 下面是说明如何把之前所有的作业的所有者替换成正在使用的账号: 下面讲一下如何进行上面批量修改: 1.首先介绍几个所有者相关的表sys.syslogins每个登录帐户在表中对应一行: 直接查询这个表: select * from msdb.dbo.syslogins select * from sys.database_principals 可以查看都有哪些登录用户…
在日常的SQL Server数据查询时经常会遇到需要将数据列转换成行的操作,现将自己学习的列转行SQL语句举例如下: --首先查询语句 SELCT * FROM  YXBAK..TBYJKSTEMP --列转行的两种方法 --列转行第一种方法,使用CASE ... WHEN ... THEN ... ELSE ... ENDSELECT 开单科室, SUM(CASE 执行科室 WHEN '检验科' THEN 数量 ELSE 0 END) AS '检验科', SUM(CASE 执行科室 WHEN…
1.访问本地的其他数据库 --启用Ad Hoc Distributed Queries-- reconfigure reconfigure -- 使用完成后,关闭Ad Hoc Distributed Queries-- reconfigure reconfigure --SELECT * FROM opendatasource('SQLOLEDB ','Data Source=ip(或ServerName);User ID=登陆名;Password=密码 ').数据库.dbo.表名(或视图) S…
--SQL Server中 数表: SELECT * FROM SYSOBJECTS WHERE xtype = 'U'; SELECT COUNT(*) FROM SYSOBJECTS WHERE xtype = 'U'; --数视图: SELECT * FROM SYSOBJECTS WHERE xtype = 'V'; SELECT COUNT(*) FROM SYSOBJECTS WHERE xtype = 'V'; --数存储过程 SELECT * FROM SYSOBJECTS WH…
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 如我们在这里系列的前几篇文章所见,SQL Server代理由一系列的作业步骤组成,每个步骤是将要进行的不同类型的工作.这个作业步骤的每个都是技术独立的,但你可以通过作业步骤作为不同的工作项目,来创建工作流.在这篇文章里,你会学到如何在作业步骤间使用工作流来修改要进行的操作,还有单个作业处理多个条件.你也会进一步检查作业步骤安全的细节和不同作…
判断数据库的类型 当我们通过一些测试,发现存在SQL注入之后,首先要做的就是判断数据库的类型. 常用的数据库有MySQL.Access.SQLServer.Oracle.PostgreSQL.虽然绝大多数数据库的大部分SQL语句都类似,但是每个数据库还是有自己特殊的表的.通过表我们可以分辨是哪些数据库. MySQL数据库的特有的表是 information_schema.tables , access数据库特有的表是 msysobjects ,SQLServer 数据库特有的表是 sysobje…
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 在这个系列的前几篇文章里,你创建配置了SQL Server代理作业.每个作业有一个或更多步骤,如你在前几篇文章所示,也会包括大量的工作流.在这篇文章里,我们会谈下作业活动监视器.作业活动监视器是系统管理员工具来运行作业,查看作业历史,启用/停止作业.这篇文章会谈下作业活动监视器运行的几个存储过程,你也可以直接使用它来定制你的作业监控. SQ…
    在讨论数据库之前我们先要明白一个问题:什么是数据库?     数据库是若干对象的集合,这些对象用来控制和维护数据.一个经典的数据库实例仅仅包含少量的数据库,但用户一般也不会在一个实例上创建太多的数据库.一个数据库实例最多能创建32767个数据库,但是按照实际情况,一般设计是不会达到这个限制值.     为了更明显地说明数据库,数据库包含了以下属性和功能:     *. 它是很多对象的集合,比如表.视图.存储过程.约束.对象集合的最大值是2(31) - 1(超过2百亿).一般对象的数量在几…
怎么样把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 里需要定时或者每隔一段时间执行某个存储过程或3200字符以内的SQL语句时,可以用管理->SQL Server代理->作业来实现. 1.管理->SQL Server代理->作业(按鼠标右键)->新建作业-> 2.新建作业属性(常规)->名称[自定义本次作业的名称]->启用的方框内是勾号->分类处可选择也可用默认的[未分类 (本地)]->所有者默认为登录SQL Server用户[也可选其它的登录]->描述[填写本次…