Tag: ssms

SSMS SMO对象:获取查询结果

我遇到了本教程,了解如何使用GO语句执行SQL脚本。 现在我想知道我能得到消息TAB的输出。 使用几个GO语句,输出将如下所示: 1行受影响 受影响的912行 … 但是server.ConnectionContext.ExecuteNonQuery()只能返回一个int,而我需要所有的文本。 如果查询的某些部分存在某些错误,则应将其也放在输出中。 任何帮助,将不胜感激。

如何通过C#确定SQL Server数据库用户的有效权限?

当我说有效权限时,我指的是当您进入SQL Server Management Studio中的数据库属性时列出的权限,单击“权限”,然后单击“有效”选项卡。 到目前为止,我已经能够使用以下代码确定显式权限: using Microsoft.SqlServer.Management.Smo; … DatabasePermissionInfo[] permissions = database.EnumDatabasePermissions(“username”); 但是,我仍然需要获得有效的权限。 在这种情况下,我为用户添加了一个登录名,并通过用户映射为数据库赋予了db_datareader和db_datawriter的角色。 在数据库的权限中,列出的有效权限是CONNECT, DELETE, INSERT, SELECT,和UPDATE ,但仅显式权限列表连接(这是上述代码唯一回退的内容)。 那么还有一种以编程方式检索有效权限的方法吗? 谢谢。

在SQL Server Management Studio中创建一个新菜单项

是否可以在SQL Server 2008 Management Studio中创建新的菜单项? 例如,当您右键单击数据库时,将显示一个选项列表(新数据库,新查询…)。 是否可以在该列表中添加新项目并在单击该按钮时实现一些C#function?

使用entity framework的SQL查询运行速度较慢,使用错误的查询计划

我一般成功使用entity framework,但一个查询运行速度非常慢。 查询(由EF生成)如下: exec sp_executesql N’SELECT [Project1].[downtimeId] AS [downtimeId], CASE WHEN ([Extent12].[downtimeStart] > @p__linq__7) THEN [Extent13].[downtimeStart] ELSE @p__linq__8 END AS [C1], CASE WHEN ([Extent14].[equipmentID] IS NULL) THEN 0 ELSE [Extent15].[equipmentID] END AS [C2], CASE WHEN ([Extent16].[equipmentID] IS NULL) THEN N”Unit Overhead” ELSE [Extent18].[equipmentCode] END AS [C3], CASE WHEN ( CAST( [Project1].[downtimeEquipmentStart] AS datetime2) > @p__linq__9) […]

SSMS中的网格控制

我在SSMS (SQL Server Management Studio 2016)中注意到,查询结果在一秒钟内返回(超过10k +行)。 结果表/网格滚动非常流畅,并且在SSMS上具有极低的内存占用(~80MB)。 这种类似网格/视图的控制方式可以执行ListView(~200MB,2-3秒)和DataGrid(~600MB,8-10秒)。 即使我关闭所有可视化或调整cancententscroll或修改其高度以优化速度,它们仍然在SSMS中远远落后于网格,仍然使用缓慢的滚动和GUI操作。 SSMS中使用的网格控制背后的原因是什么?

SQL Server管理对象

我使用受信任或SQL登录在下面的代码中得到相同的错误: VS2010,控制台应用程序.NET4,Win XP。 SQL2005完整版。 转移炸弹.TransferData 错误:errorCode = -1073548784 description =执行查询“”失败,并显示以下错误:“由于以下错误,检索具有CLSID {19E353EF-DAF4-45D8-9A04-FB7F7798DCA7}的组件的COM类工厂失败:80040154” 。 可能的失败原因:查询问题,“ResultSet”属性设置不正确,参数设置不正确或连接未正确建立。 这感觉就像安全。 任何想法都会很棒! using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.SqlServer.Management.Smo; using Microsoft.SqlServer.Management.Common; using System.Collections.Specialized; using System.IO; using System.Configuration; namespace GenerateScripts { class Program { static void Main(string[] args) { ServerConnection sourceConnection = new ServerConnection(“localhost”); Server sourceServer = new Server(sourceConnection); //sourceServer.ConnectionContext.LoginSecure […]

有没有办法以编程方式执行包含实际执行计划的查询,并查看是否有任何索引建议

我有很多查询,我想在sql server management studio上使用Include Actual Execution Planfunction测试每个查询 但是,对于1m +查询,我不可能手动执行此操作 所以我想我可以通过编程(从c#)执行包含实际执行计划function,并查看SQL服务器是否建议任何索引