有没有什么办法可以将表和proc的“Alter”语句更改为“Drop if exists”当构建吐出脚本? 使用Visual Studio 2010 Ultimate。 TFS 2010.Visual Studio 2010数据库生成删除如果存在
回答
我相信你所指的代码是从一个模板生成的。
看吧......
C:\ Program Files文件\微软的Visual Studio 10.0 \ Common7 \工具\模板\数据库项目项
和修改这两个文件。
- 新表Script.sql
- 新的存储过程Script.sql
嗯或许,但我认为这可能是在数据库项目中创建脚本/表格时使用的模板,而不是模式比较器使用的模板。 –
听起来很有希望。会让你知道,并将其标记为答案,如果有效的话。 –
手续已经在第一次你会看到什么创建后,该工具获取代码从/读取数据库,不再是您可以编辑的脚本;当然,您可以将所显示的任何内容复制/粘贴到文本编辑器中,并将其另存为SQL文件(.sql扩展名)。
如果您尝试此示例代码
IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'usp_test_proc')
BEGIN
DROP Procedure usp_test_proc
END
ALTER PROCEDURE dbo.usp_test_proc
/*
(
@parameter1 int = 5,
@parameter2 datatype OUTPUT
)
*/
AS
/* SET NOCOUNT ON */
select name, comment from test_table
RETURN
,你会得到这样的信息:
“无法保存对象,因为语句类型不支持它必须与创建或更改开始。”
我建议你创建自己的SQL程序文件,并添加顶部的存在statment,例如:
IF EXISTS (SELECT * FROM sysobjects WHERE type = 'P' AND name = 'usp_test_proc')
BEGIN
DROP Procedure usp_test_proc
END
CREATE PROCEDURE usp_test_proc
/*
(
@parameter1 int = 5,
@parameter2 datatype OUTPUT
)
*/
AS
/* SET NOCOUNT ON */
select name, comment from test_table
RETURN
这样,你可以编辑/改变你的SQL代码文件在您方便的然后就重建过程通过Visual Studio菜单'数据/ Transact-SQL编辑器/新查询连接'打开一个新的查询连接,打开SQL文件并单击执行SQL工具栏按钮(绿色箭头)来连接到您的数据库。
将看看这个。 –
我建议使用CREATE-ALTER而不是DROP-CREATE,以避免丢失和重新创建时可能已应用于存储过程的权限。使用CREATE-ALTER,初始检查是IF NOT EXISTS,然后创建一个简单的伪处理程序。然后脚本的主要部分是ALTER PROC。我在这里给出了示例代码:http://stackoverflow.com/a/15911851/216440 –
- 1. 在Visual Studio 2010数据库项目中生成种子数据
- 2. visual studio 2010自动生成数据集
- 3. 在Visual Studio 2010中替换/扩展Visual Studio的生成存根
- 4. Visual Studio 2010宏从数据库项目中删除SQL文件
- 5. Visual Studio 2010数据库项目和代码生成
- 6. Visual Studio 2010数据库项目脚本生成
- 7. Visual Studio 2010 - 导入数据库的数据库项目无法生成
- 8. 在visual studio 2010中生成类图express
- 9. 在visual studio 2010中生成错误C++
- 10. 在Visual Studio 2010中预生成
- 11. 数据库项目:Visual Studio 2008 vs 2010
- 12. Visual Studio 2010数据库部署
- 13. 创建数据库问题,Visual Studio 2010
- 14. Visual Studio 2010数据库项目!
- 15. Visual Studio 2010数据库项目部署
- 16. visual studio 2010中的本地数据库缓存在哪里?
- 17. 防止在Visual Studio 2010上删除用户生成的内容发布
- 18. Visual Studio 2010无法删除数据连接
- 19. 如何在Visual Studio中清理生成期间删除dlldata.c?
- 20. 如何删除存储在Visual Studio中的数据库连接字符串?
- 21. 删除Visual Studio 2010中的.pdb文件
- 22. 在Visual Studio 2010中自动化sql存储的转换生成
- 23. Visual Studio 2010和IIS Express锁定生成
- 24. Visual Studio 2010中的UML图生成器
- 25. Visual Studio 2010数据库浏览器sql查询清除表
- 26. 如何删除在Visual Studio
- 27. 如何从Visual Studio 2015项目中删除数据库
- 28. Visual Studio 2010数据源
- 29. 删除数据库如果在它
- 30. 新Visual Studio 2010数据库项目和数据库图
我很难从你的问题中告诉你用什么工具来生成脚本。我回答了这个问题,但我不确定这些脚本是否是VS使用的脚本。 –