作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习 Visual Studio 2012 的“数据库项目”系统,使用带有 Update 1 的 Visual Studio 2012 和 SSDT。
我发现它非常擅长在我的数据库中发现真正的问题,尤其是存储过程中的编程错误,其中有人从数据库表中删除了一个字段,但没有检查并验证所有存储过程是否正确执行。因此,通过 Visual Studio 2012 中的“构建”命令验证 .sql 脚本非常方便。我不想放弃它。
但我也注意到,每当在存储过程中使用 #TEMPTABLE 时,即使关闭了“启用通用对象的扩展 Transact-SQL 验证”,我仍然会收到涉及存储过程中 #temptable.field 引用的“构建错误”。
数据库项目采取哪些步骤来确定临时表的架构?由于我的临时表根据定义不存在于主架构中,因此当我在创建数据库后立即通过“导入数据库”选项将真正的生产 SQL 数据库导入 Visual Studio 时,它们没有进入我的数据库项目。
我应该创建“#TEMPTABLE.SQL”文件并将它们添加到我的项目中吗?
示例错误:
c:\dev\...\dbo\Stored Procedures\xyz.sql(95,96): Warning: SQL71502: Procedure: [dbo].[proc123] has an unresolved reference to object [#temptable1].[somefield1].
最佳答案
这是临时表的问题,您应该使用表值函数。
关于tsql - 在 Visual Studio 2012 中使用数据库项目和 SQL Data Tools : How do I get temp tables to resolve?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15464567/
我是一名优秀的程序员,十分优秀!