问题标签 [sql-agent]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 查询移动一些记录然后删除它们
如果我的问题对你们中的某些人来说听起来太简单了,我深表歉意。我是 SQL Server 的新手,我迫切需要建议。我做了我的研究,但我仍然不确定如何继续,因为我读到的所有关于它的文章似乎都太笼统了。
我的任务是保持表 ABC(在服务器 1 上)没有超过 3 个月的记录。超过 3 个月的记录应自动移动到服务器 2 上的表 ABC_ARCHIVE。只是应对和删除记录没什么大不了的,但我想在删除之前自动检查记录是否已经在服务器 2 上从服务器 1。
我考虑过使用一个查询,我将在 SSIS 包中运行该查询,该包又将在 SQL Server 代理作业中运行。如果您认为我应该对此有所不同,请告诉我。我宁愿避免涉及任何不需要的组件。
要选择超过 3 个月的记录,我需要如下查询:
然后用“delete”代替“select”来删除它们。
我在这两个查询之间写了什么以确保在删除它们之前确实传输了这些行?如何在从服务器 1 中删除记录之前自动检查记录是否已经在服务器 2 上?如果不可能这样做,您能否提出替代解决方案?
我使用的是 Enterprise x64 版本,并且我的帐户具有系统管理员权限。我对在 SQL 代理中创建工作感到非常满意,并且对 SSIS 也很满意(非常欢迎提示)。
我将非常感谢任何提示和建议。先感谢您!
sql-server - 在 SQL Server 代理中增加 TEXT SIZE
SQL Server 代理对 nvarchar(max) 等文本字段有 512 个字符的限制。当我在 SSMS 中运行它时看到我的存储过程正常工作但在由 SQL Server 作业运行时无法正常工作,我发现了这一点。
为了解决这个问题,我知道我可以在我的存储过程中使用 SET TEXTSIZE { number } 来增加这个数字。但是,我不想在 SQL Server 作业运行的每个存储过程中添加这一行。有没有办法可以为 SQL Server 代理本身设置此值?
sql-server - 按特定顺序自动执行多个 SQL Server 2012 脚本
我需要一些指导来完成我从未使用过 SQL Server 2012 的任务。非常感谢您的帮助。我在 SQL Server 中继承了一个数据模型。
基本上,我有 5 个 SQL 脚本:
- 脚本 A
- 脚本 B
- 脚本 C
- 脚本 D
- 脚本 E
为了成功运行脚本 B,它需要访问脚本 A 生成的表来执行计算。基本上,脚本是互相喂食的。我需要按特定顺序运行脚本。
我的第一个想法是“存储过程”。到目前为止,我过去只编写了一个存储过程来执行来自同一脚本的代码,而无需执行其他脚本。
我的问题是,对于按特定顺序自动执行上述 5 个脚本,您提出了哪些想法?我怎样才能做到这一点?你会建议我在做这件事时怎么想?
运行完整的脚本列表大约需要 10 个小时。
sql - SQL Agent 显示“SQL Agent XPs Disabled”,但它们不是
SQL Server 2012 SP2 CU6 v-5592
我启动 SQL 服务和 SQL 代理服务;都开始OK。然后我在 Windows 2012 Ent(不是 R2)服务器上登录到 SSMS,SQL 代理有红色 X,并在 SSMS 中显示为“SQL Agent XPs Disabled”,我只需在对象资源管理器中右键单击服务器上的刷新,一切正常
重新运行 reconfigure = 1 和相同的东西;说已经设置为 1
两台相同的服务器;当天安装,一做一不。
为什么Disabled
不是这样说呢?我的工作会失败吗?我该如何摆脱这个?
sql - 由 2 个用户执行一个 Sql Agent 作业
我有一个场景,其中有一个开发和生产环境。所有 SSIS 开发都将在 dev SQL Server 中进行,然后将其交给一个单独的团队在生产中进行部署。
所以现在我的要求是,作为 SSIS 包的开发者,我应该能够通过 SSMS 连接到 prod 服务器,并在 prod 中执行其他团队部署的作业。而且我应该看不到服务器上的任何其他工作。
这种情况的最佳设置是什么?
sql - SQL Server 代理 - 是否能够在一个步骤中注释掉多个作业?
我有一个包含多个单独步骤的 SQL Server 代理作业。在其中一些步骤中,我有多个 exec 语句触发存储过程以填充表。我的问题是:有没有办法注释掉其中一些 exec 语句?目前,我正在处理更改时删除行,并在更改完成后恢复它们。我没有可以试验的测试环境。谢谢
sql - SQL Server 代理。我可以在日志中添加详细信息吗
SQL Server 2005。我继承了一些 SQL 代理作业,这些作业有多个步骤,每个步骤都包含多个存储过程执行。这一切都很好,但是当其中一个 sp 执行失败时令人头疼,因为我必须遍历所有 sp 以寻找失败的那个(因为 SQL 代理只报告失败的步骤和失败的原因)。在理想的世界中,这些 sp 将被分成单独的步骤,但我不能这样做。所以,我的问题是……是否有写入 SQL 代理日志的方法,以便我可以跟踪哪个 sp 执行已启动。是否有任何类似于 DOS 中的 ECHO 命令的内容可以在每个 sp 执行之间用于更新日志?
sql-server - SQL Server 配置分发向导不出现
我遇到了一个大问题。我使用 SQL Server 2012 分发数据。我关注了这篇文章,但遇到了一个问题。当我右键单击复制时,弹出窗口显示但没有像文章中那样选择配置分发。
这就是我要的:
这就是我遇到的:
请告诉我为什么?
sql-server - SSIS 未在 SQL JOB 中运行
我对 SQL JOB 有疑问。
我正在使用 SSIS 将数据导入数据库。当我通过 Visual Studio 运行 SSIS 时,它按预期工作。此外,当我从 SQL Server 中的集成服务目录运行 SSIS 时,它工作正常。但我的问题是,当我尝试使用 SQL JOB 将数据导入我的数据库时(使用与以前情况相同的 SSIS),虽然没有错误消息并且 Sql 作业成功运行,但我的数据库中的目标表为空(没有数据导入我的数据库)。
当我检查由 SQL 运行的 SSIS 的执行报告时,我看到以下警告:“Foreach 循环容器:警告:每个文件的枚举器为空。对于每个文件的枚举器没有找到任何与文件模式匹配的文件,或者指定的目录为空。” 再一次,当我以除使用 SQL JOB 之外的其他方式运行 SSIS 时,一切正常。
难道我做错了什么?我怎么解决这个问题?请帮助我,因为我无法解决这个问题。谢谢你。
sql-agent-job - 当用户关闭显示正在运行的作业状态的对话框时,SQL 代理作业是否会关闭?
我在 SQL Server 代理中运行了一份工作。但是我错误地关闭了当您选择“为工作加注星标”时出现的对话框。这是否意味着该工作已停止/取消?
PS:我无权检查服务器签证 SQL Server 查询上当前正在运行的作业。