Visual Studio 数据库项目生成脚本
Posted
技术标签:
【中文标题】Visual Studio 数据库项目生成脚本【英文标题】:Visual Studio Database Project Generate Script 【发布时间】:2015-12-18 14:00:13 【问题描述】:我刚刚接手了一个使用 VS 数据库项目的项目,但我遇到了早期的障碍。我假设有一个文件 localhost.publish.xml 将构建本地数据库(是否正确)?当我单击生成脚本时,我收到错误“无法连接到目标服务器”,并且我在网上阅读的所有内容都谈到了安装我所做的数据工具,但它没有帮助。自从我打开 Visual Studio 以来已经有几年了,所以我知道我只是错过了显而易见的东西,但是我无法在任何地方找到可以让我知道我错过了什么的文档。我没有包含任何代码,因为此时我什至不确定什么会对任何人有帮助。
【问题讨论】:
代码可能使用了 SQL Server 数据库。数据库可能已移动,或者您没有访问数据库的凭据。检查代码是否有任何 SQL 语句(SQLConnection、SQLDataAdapter、...)。 xml 可能包含连接字符串或只是创建报告输出。 “生成脚本”实际上是做什么的 你为什么问我???这是你的代码。它可能是一个在表单中执行代码的按钮。当项目未运行时,使用菜单查看:解决方案资源管理器。使用“生成脚本”按钮查找表单。然后按下 Generate Script 按钮,该按钮将带您进入代码。 代码中没有。我说的是,当您双击 localhost.publish.xml 文件时,您会看到一个窗口,其中包含“生成脚本”选项和另一个显示“发布”的选项 他们在项目中设置(一个配置文件)。我怀疑你有一个 XAML 文件,而 xml 是 XAML 文件的输入。我会使用项目菜单编辑:查找。更改设置以搜索整个解决方案。然后搜索“SQL”。 【参考方案1】:当您双击 localhost.publish.xml 并打开“发布数据库”对话框时,请仔细查看目标数据库连接。确保这是您计划运行 SQL 脚本的数据库,并且这是您可以连接到的有效服务器。单击编辑按钮进行更改。您的问题是 a) 这不是一个有效的服务器,或者 b) 您无法从您的计算机连接到此服务器(不同的网络、防火墙规则等)。
Visual Studio 需要连接到数据库以生成脚本的原因是它需要根据它们是否已经存在来确定脚本是否应该包含用于您的 db 对象的 CREATE 或 ALTER 语句。
【讨论】:
我的只有本地主机,我认为它是有效的。这是我正在投入的现有项目。那里的 localhost 无效吗? @esastincy localhost 应该是有效的。确保您的计算机上确实有一个数据库实例正在运行,并且发布文件中的凭据是正确的。另请查看 this 和 this 以帮助解决连接问题。以上是关于Visual Studio 数据库项目生成脚本的主要内容,如果未能解决你的问题,请参考以下文章
架构比较后,Visual Studio 中的“生成脚本”按钮被禁用
如何编写 Visual Studio 数据库项目的部署脚本?