标签: sql-server-data-tools

CLR存储过程:如何设置架构/所有者?

我正在研究一个基于Linq的CLR存储过程,用于一些复杂的过滤和操作,否则如果在更"传统"的存储过程中实现,则需要大量凌乱且性能不佳的T-SQL代码.

这工作得很好,但我找不到如何在部署阶段设置此存储过程的模式,以便更好地组织和分离模块中的数据库对象.

有任何想法吗?

提前谢谢了.

sql-server stored-procedures sql-server-2005 sqlclr sql-server-data-tools

9
推荐指数
2
解决办法
6784
查看次数

ssdt post部署脚本运行一次

我是SQL Server数据库工具的新手,可能对后期部署脚本正在做什么做出错误的假设..如果我错了,请纠正我.

据我所知,预计部署后脚本将在每次部署后运行,而不仅仅是单个部署.

如果我想让部署后脚本运行一个脚本,只有一次有一种方法可以做到这一点,而不需要数据库中的版本或历史表,这些脚本已经运行这些脚本时记录?

即我可以将任何后续的脚本修改作为项目中的新文件添加到版本号中,并将其添加到后期部署脚本中,但是如何忽略先前的脚本(可能没有先删除它)?无论在部署期间是否仍然运行脚本?

是否有这种配置或这种意外行为?

sql deployment sql-server-2008 visual-studio-2012 sql-server-data-tools

9
推荐指数
1
解决办法
2660
查看次数

无法使用SSDT Visual Studio 2012比较数据库架构"无法确定数据库平台类型.数据库可能不可用.."

我在Visual Studio 2012版本11.0.60610.01更新3中创建了数据库项目.我正在使用此数据库项目在SQL Server 2008 R2版本10.50.4000.0上比较和发布数据库

我的数据库项目目标平台设置为SQL Server 2008.

我的SSDT版本是11.1.20627.00

现在我的SQL Server版本升级到SQL Sever 2012版本12.0.2000.8

之后,我将我的数据库项目目标平台更改为SQL Server 2012.

但它不允许我比较数据库架构或发布数据库.

它抛出以下错误

错误345目标中的验证错误:DB_Name无法确定数据库平台类型.数据库可能不可用..

我还使用"测试连接"按钮从"编辑连接"向导中检查了数据库连接是否成功.

有人可以帮帮我吗?我需要为更改数据库平台类型设置更多配置吗?

c# sql-server-2008-r2 sql-server-2012 visual-studio-2012 sql-server-data-tools

9
推荐指数
1
解决办法
9330
查看次数

SSDT/SSRS - 报表预览器无法运行

我对SQL Server数据工具2012有一个非常特殊的问题.每当我尝试启动报表预览器时,我都会遇到以下异常:

没有端点侦听net.pipe:// localhost/PreviewProcessingServce7324/ReportProcessing可以接受该消息.这通常是由错误的地址或SOAP操作引起的.有关更多deatils,请参阅InnerException(如果存在).

错误信息

据我所知,我所做的一切都没有引发这个问题.它刚开始发生,有一天我开启了SSDT.我 在SSDT中尝试了关于报表设计器预览的建议,引发了一个"终点"未找到错误.

但是,我的服务正常运行(重新启动它没有帮助),并且使用Setspn也没有为此做任何事情.

有人有主意吗?

reporting-services sql-server-data-tools

9
推荐指数
1
解决办法
1万
查看次数

Visual Studio数据库项目中的版本控制更新

我的公司使用Visual Studio数据库项目来部署对数据库的更新.据我所知,它提供了比较项目架构和目标数据库的状态,并生成代码以将后者的架构更新为前者的功能.它还提供了一个预部署脚本和一个部署后脚本,但仅此而已.

缺少的是版本控制和/或排序的任何概念.例如,如果我想将一个不可为空的FK列添加到表中,我需要分两步完成 - 首先,将其添加为具有部署后脚本的可空列,以更新行以获得有意义的值第二,使列不可为空.这些必须按顺序发生.

据我所知,无法通过部署Visual Studio数据库项目来确保部署前和部署后脚本的顺序排序.我在这儿吗?这有两个含义:首先,一旦创建了表,你就无法真正地将一个不可为空的FK列添加到表中;其次,你的部署前和部署后的脚本将继续增长和增长并包含多年前就是因为它们都是在每次部署数据库都运行的.

有没有办法使用Visual Studio数据库项目进行版本更新,如果没有,是否有允许这种版本控制的项目类型?

database sql-server visual-studio-2012 sql-server-data-tools

9
推荐指数
1
解决办法
808
查看次数

相同的架构安装,为什么,我该如何解决?

我正在尝试在当前安装的SQL服务器上安装SQL Server数据工具 - Visual Studio 2012的商业智能.

我在安装过程中遇到以下错误:相同的架构安装

在此输入图像描述

错误消息没有意义,这些是我的规范

在此输入图像描述

我使用以下exe来安装商业智能工具

sql-server sql-server-2012 sql-server-data-tools

9
推荐指数
1
解决办法
7938
查看次数

避免系统版本表中的模式不匹配

寻找解决方法:

Error: SQL71609: System-versioned current and history tables do not have matching schemes. Mismatched column: 'XXXX'.
Run Code Online (Sandbox Code Playgroud)

尝试在SSDT中为Visual Studio 2015使用SQL 2016系统版本(时间)表时.

我已经定义了一个基本表:

CREATE TABLE [dbo].[Example] (
    [ExampleId] INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
    [ExampleColumn] VARCHAR(50) NOT NULL,
    [SysStartTime] datetime2 GENERATED ALWAYS AS ROW START HIDDEN NOT NULL,
    [SysEndTime] datetime2 GENERATED ALWAYS AS ROW END HIDDEN NOT NULL,
    PERIOD FOR SYSTEM_TIME (SysStartTime,SysEndTime)
)
WITH (SYSTEM_VERSIONING=ON(HISTORY_TABLE=[history].[Example]))
GO
Run Code Online (Sandbox Code Playgroud)

(假设[history]在SSDT中正确创建了模式).这是第一次建立良好.

如果我以后做出改变:

CREATE TABLE [dbo].[Example] (
    [ExampleId] INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
    [ExampleColumn] …
Run Code Online (Sandbox Code Playgroud)

sql-server temporal sql-server-data-tools visual-studio-2015 sql-server-2016

9
推荐指数
2
解决办法
2129
查看次数

SQL72007:语法检查失败'意外的文件结束发生'.批量附近:

在SSDT项目中(使用VS2017/VS2015,SSDT版本15.1.61702.140),我无法构建我的项目.编译器一直在我的PostDeploymentScript中抱怨sql语句(是的,我已经将BuildAction属性设置为PostDeploy).sql语句是:

if ('$(env)' = 'dvp')    
BEGIN
    PRINT 'creating users for dvp'
    :r .\SecurityAdditions\usersdvp.sql 
END
ELSE IF ('$(env)' = 'qat')
BEGIN
    PRINT 'creating users for qat'
    :r .\SecurityAdditions\usersqat.sql
END 
Run Code Online (Sandbox Code Playgroud)

实际的错误消息是:

D:\My\File\Path\PostDeploymentScript.sql (lineNum, col): Error: SQL72007:
The syntax check failed 'Unexpected end of file occurred.' in the batch near:
Run Code Online (Sandbox Code Playgroud)

在最后一行(结束)的错误消息中引用的行号.知道是什么导致了这个吗?

sqlcmd sql-server-data-tools visual-studio-2017

9
推荐指数
2
解决办法
3004
查看次数

TSQL单元测试工具2017:SQL Server数据工具2017与tSQLt

我有一个需要SQL Server单元测试的新项目,以及带有VSTS的CI/CD.

以下是所需的功能

  • 针对存储过程的SQL服务器单元测试,为每个测试设置初始目标表并进行清理

  • 在sql中进行单元测试

  • 带有VSTS和Git的CI/CD

  • 易于安装且易于使用

我查看了SSDT 2017,看起来不错.但它似乎缺少一个功能,可以在预测试步骤中的每个测试之间轻松共享通用设置脚本.它可能缺少应该可用于日常使用的其他功能.但我可能错了.

哪个工具更适合2017年的一般sql server单元测试?

用于Visual Studio的SQL Server数据工具

TSQLT

sql-server visual-studio tsqlt sql-server-data-tools sql-server-unit-testing

9
推荐指数
2
解决办法
3442
查看次数

使SSDT生成一个SQL脚本(而不是部署数据库)

最近升级到SSDT 2012后,我似乎错过了生成T-SQL脚本而不是将数据库部署到某个服务器的选项.

为了更准确,SSDT的前身用于将"部署"操作设置为"生成脚本",但我无法在新版本的任何位置找到该选项.

可能吗?

sql visual-studio-2010 sql-server-data-tools

8
推荐指数
2
解决办法
9306
查看次数