加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

SQL Server的模板

(2009-03-12 09:52:37)
标签:

it

分类: 数据库

我们在编写SQL 脚本的时候,有很多通用的地方,这时候模板就可以给我们带来很大的方便。下面就用新建存储过程为例,来说明使用模板的好处,以及如何维护这个模板。

以下提到的特点适用于 SQL Server 2005 和 SQL Server 2008。

 

模板的好处:

我们在 SQL Server 中,新建一个存储过程,如下方式:

http://blog.joycode.com/images/metaapis/64/WindowsLiveWriter/SQLServerSQL_8B0E/005_thumb.pngServer的模板" />

默认情况下,这样我们就会获得一个如下的SQL语句

-- ================================================
-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters 
-- command (Ctrl-Shift-M) to fill in the parameter 
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:         <Author,,Name>
-- Create date: <Create Date,,>
-- Description:    <Description,,>
-- =============================================
CREATE PROCEDURE <Procedure_Name, sysname, ProcedureName> 
        -- Add the parameters for the stored procedure here
        <@Param1, sysname, @p1> <Datatype_For_Param1, , int> = <Default_Value_For_Param1, , 0>, 
        <@Param2, sysname, @p2> <Datatype_For_Param2, , int> = <Default_Value_For_Param2, , 0>
AS
BEGIN
        -- SET NOCOUNT ON added to prevent extra result sets from
        -- interfering with SELECT statements.
        SET NOCOUNT ON;

    -- Insert statements for procedure here
        SELECT <@Param1, sysname, @p1>, <@Param2, sysname, @p2>
END
GO

我们就可以在这个现有的模板基础上书写出我们自己的存储过程。

当然,模板中需要修改的内容我们可以通过更方便的方式就行修改。如下图方式或者输入快捷键 Ctrl+Shift+M 。

 

http://blog.joycode.com/images/metaapis/64/WindowsLiveWriter/SQLServerSQL_8B0E/003_thumb.pngServer的模板" />

在 SQL Server Management Studio 中, 点击如下菜单项 Query--> Specify Values for Templete Parameters 。就会出现下面的模板参数值指定窗体:

http://blog.joycode.com/images/metaapis/64/WindowsLiveWriter/SQLServerSQL_8B0E/004_thumb.pngServer的模板" />

我们在这个窗体就可以输入我们需要修改的内容。

然后我们就可以很方便的产生我们需要的存储过程了。

 

如果让这个模板跟我们的一些经验相捆绑,也就是我们自己维护自己的一些模板呢?下面就使方法:

如何配置模板?

在 SQL Server Management Studio 中, 点击如下菜单项 View --> Templete Explorer 。

http://blog.joycode.com/images/metaapis/64/WindowsLiveWriter/SQLServerSQL_8B0E/001_thumb.pngServer的模板" />

这样在 SQL Server Management Studio 的右边就会出现 Templete Explorer ,如下图。

http://blog.joycode.com/images/metaapis/64/WindowsLiveWriter/SQLServerSQL_8B0E/002_thumb.pngServer的模板" />

在这里我们就可以很方便的维护自己的模板。

 

前面的例子中我们看到了,模板中有些参数我们可以指定。如何使用这些参数呢?

模板参数的要求


我们在上面的模板中看到了很多类似 <Procedure_Name, sysname, ProcedureName> 的文本,这就是模板的参数。

参数需要三个元素:要替换的参数的名称、该参数的数据类型以及该参数的默认值。

参数按以下格式包括在尖括号 (< >) 中:<parameter_name, data_type, default_value>。

parameter_name  列出存储过程或函数中的参数。此字段是只读的。

data_type  模板中参数的数据类型。此字段是只读的。若要更改数据类型,请更改模板中的参数。

default_value  为所选参数指定值。默认值。

 

 

参考资料:

SQL Server 2005创建自定义模板
http://www.chinaeda.cn/show.aspx?id=13978&cid=130
使用 SQL Server Management Studio 模板
http://technet.microsoft.com/zh-cn/library/ms174169.aspx

创建自定义模板
http://technet.microsoft.com/zh-cn/library/ms166841.aspx

关于SQL SERVER中的模板问题
http://social.microsoft.com/forums/zh-CN/sqlserverzhchs/thread/5fa116ef-6e12-4c9a-a460-1f474f5ed557/

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有