问题标签 [smo]
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 - 在Powershell中的子选择中获取父属性?
我想在 Powershell 的子结果集中包含一个父级属性,但我不知道该怎么做。我想要做的一个例子是将 ServerName 作为管道的第一列来获取 DatabaseName 和服务器上所有数据库的数据库属性列表,类似于:
这是我正在尝试做的一个简化示例,(我可以轻松地使用 Database Parent 属性来获取 $s.Name)但我有更复杂的应用程序,我想使用这种类似的方法和 Parent财产不是我所追求的。此外,如果我可以将 $s.Name 别名为 ServerName 并将 $_.Name 别名为 DatabaseName ,那将是理想的输出。
编辑:
我花了两天时间在网上搜索如何做到这一点,但找不到任何参考。如果你碰巧谷歌/必应/无论答案,如果你也分享你曾经找到它的东西,我会非常感激。我通常可以找到问题的答案,但两天后,我只是把好时光抛在了后面。
c# - 使用 SMO 更改 DataFile MaxSize
我正在尝试修改 sql 2008 数据文件的 Maxsize,但没有发生更改。
我正在使用此代码:
我没有收到错误消息,但 DataFile 的最大大小没有改变。
对我做错了什么有什么建议吗?谢谢。
c# - 以编程方式获取 SQL 集群虚拟名称
我编写了一个 Windows 服务来从我们所有的 SQL 服务器收集信息。该服务安装到每台服务器上,并利用 WMI 和 SMO 将相关系统信息插入中央数据库。为了获取 SQL 信息,我使用以下 c# 代码:
我遇到的唯一问题是我们的 SQL 集群。
对于那些不熟悉主动/被动 sql 集群的人,您不能直接连接到其中一个节点。相反,sql 集群会获得一个虚拟名称和另一个客户端将连接到的 IP 地址。
我拥有的当前代码将尝试连接到 NodeName\instanceName,这显然不适用于集群。相反,我需要以编程方式找到该节点所属的 SQL 集群虚拟名称并连接到该名称。
我以为我可以从 MSCluster_Cluster WMI 类中获取此信息,但这只会让我获得集群虚拟名称,而不是 SQL 集群虚拟名称。
c# - 使用 SMO.Agent 检索 SQL 作业执行状态 - 安全问题
我有一个 C# 程序,它使用SQL Server 管理对象(SMO) 接口触发SQL Server 代理作业。它看起来像:
我现在使用SQL Server 身份验证来简化事情,同时解决这个问题。
现在,我的问题是,除非SERVER_USERNAME
是 'sysadmin' dbo 角色的一部分,否则ssis_job.CurrentRunStatus
始终是 ' Idle
' - 即使我知道作业正在运行。它不会出错,只是总是报告空闲。
如果用户是管理员,则按预期返回状态。
你说的角色成员?
好吧,我将SERVER_USERNAME
SQL Server 登录添加到 msdb 角色 SQLAgentOperatorRole,这似乎没有帮助。
作业的所有者是系统管理员帐户 - 如果这是我不确定如何解决的问题。
有任何想法吗?
sql-server - 使用 SQL Server 管理对象 (SMO) 获取列的长度
我正在编写 T4 模板来生成 CRUD 存储过程等
我正在使用 SMO 遍历表的列:
我的问题只是如何找到 varchar 列的长度?列上似乎没有任何 Length / MaxLength 等属性。
我使用http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.column_members.aspx作为参考
c# - C# SMO backup of remote database to local machine
I have an application which performs backups and restores of SQL databases, this works fine on the local machine, however if I run this against a SQL server hosted on another machine I get the following error
This appears to be being caused by the SQL server attempting to write this file to its local drive. I cannot setup a shared area into which the backup can be placed due to security restrictions.
Does anyone know how I can move this data back to the machine the code is being called from?
My code is below.
c# - 使用 SMO 更改逻辑数据库名称
使用 SMO 还原数据库时如何更改逻辑数据库名称?
/维克托
ssis - 使用 SMO 连接传输 SQL Server 对象任务在大型表上失败
我正在使用 Transfer SQL Server Object 任务将生产数据库的 120 个表复制到另一个位置。我还尝试使用 VB.NET 脚本执行脚本任务。SQL Server 2005 是版本。
除了一个表之外,所有表都被复制=我得到的错误是-“文件存在”。该表将 .doc、.ppt、.xls 等文件存储在数据类型 image 的字段中。表的大小为 1,156.227 MB。大约5000条记录。
在我们开始收到此错误之前,此软件包已成功运行近一年。当任务尝试复制上表时,我收到错误 [Transfer SQL Server Objects Task] Error: Execution failed with the following error: "ERROR : errorCode=-2147024816 description=The file exists. helpFile=dtsmsg.rll helpContext=0 idofInterfaceWithError={8BDFE893-E9D8-4D23-9739-DA807BCDC2AC}”。
我们也使用 SQL Profiler 来调试失败,但看不到该表的批量插入语句。所有其他表都有批量插入语句。表创建成功,数据复制失败。
有没有办法解决这个或复制这个表的另一种方式。
smo - 客户端上的 SMO 缺少 dll
我创建了一个远程连接到 SQL Server 2008 的应用程序。SQL 连接工作正常,所有传统的 oCommand.ExecuteNonQuery(),工作得很好!
但是我的 SMO 类使用 server.ConnectionContext.ExecuteNonQuery(scriptfile); 错误:缺少批处理 parsing.dll 。
我无法在客户端计算机上安装这些独立的实用程序,然后在完成后将它们全部关闭:正如建议的那样: http: //www.microsoft.com/downloads/details.aspx? displaylang=en&FamilyID=228de03f-3b5a- 428a-923f-58a033d316e1
由于我的批量插入是包含完整表的大型内存猪,我将表写入 temptable.sql 文件并使用 SQLCMD Util 并稍后切换 SMO 并且我有同样的问题。这些都不能在客户端的 PC 上使用。有什么建议吗?谢谢 :-)
sql-server - SQL Server SMO 数据库枚举返回不存在的数据库
我正在使用 SMO 枚举 SQL Server 2005 实例的所有数据库,如下所示,它返回一个不存在的数据库(它过去存在)。
在同一台服务器上,运行
��回正确的数据库列表。我不明白为什么 SMO 没有给我与 sp_databases() 相同的列表。上面的代码在客户机器上正常工作。我只在运行 Windows Vista 的两台同事笔记本电脑上看到它失败了。
为什么 SMO 返回一个不再存在的旧数据库?
程序集版本都是 9.0.242.0