首页 > 其他 > 详细

存储过程——创建通用存储过程(七)

时间:2014-04-13 08:58:54      阅读:357      评论:0      收藏:0      [点我收藏+]
  • 目标
  1. 实现简单的数据库编程
  2. 实现通用的删除功能
  3. 实现通用的修改功能
  • 通用删除和通用修改 实现思路
  1. 普通删除功能

    根据某个条件删除某个表信息,通常如:根据主键删除新闻表信息某条数据,根据主键删除用户表某条数据

  分析:

    如果要实现通用的删除功能,只需要编写一个存储过程,传入要删除的表名和删除的条件即可,拼接一个sql语句,最后执行这个sql语句,实现通用的删除功能

  • 通用修改功能实现思路
  1. 普通修改:一个表就需要写一个存储过程去实现修改功能

  分析:

   是否可以直接将表名,修改的列名,修改的条件作为参数,拼接一个sql语句,最后执行这个sql语句,实现通用的修改功能

  • 执行sql语句

 EXEC(@sql)

通用删除功能如下

bubuko.com,布布扣
-- =============================================
-- Author:        <Author,,Name>
-- Create date: 2014年4月12日 23:04:30
-- Description:    <通用删除>
-- =============================================
CREATE PROCEDURE DelTable]    
@tablename nvarchar(100),--表名 @condition nvarchar(200)--查询条件 AS BEGIN --拼接sql DECLARE @sql nvarchar(1000) SET @sql=Delete from +@tablename+ where +@condition EXEC(@sql) END
bubuko.com,布布扣

测试打印sql如下
Delete from userinfo where 3

在t-sql界面操作调用格式如下

bubuko.com,布布扣
EXEC DelTable userinfo,id=6
bubuko.com,布布扣

通用修改功能如下

bubuko.com,布布扣
-- =============================================
-- Author:        <Author,,Name>
-- Create date: <2014年4月12日 23:33:39
-- Description:    通用修改
-- =============================================
CREATE PROCEDURE UpdateTable
    @tablename nvarchar(100),
    @columns nvarchar(200),
    @condition nvarchar(500)
AS
BEGIN
    DECLARE @sql nvarchar(1000)
    SET @sql=update +@tablename+ set +@columns+ where + @condition
    EXEC(@sql)
END
GO
bubuko.com,布布扣

在界面调用如下

bubuko.com,布布扣
EXEC [dbo].[UpdateTable] userinfo,age=24,id=1
bubuko.com,布布扣

通用查询功能如下

bubuko.com,布布扣
-- =============================================
-- Author:        <Author,,Name>
-- Create date: 2014年4月13日 00:07:44
-- Description:    查询
-- =============================================
CREATE PROCEDURE QueryTable 
    @tablename nvarchar(100),
    @column nvarchar(200),
    @condition nvarchar(300)
AS
BEGIN
    DECLARE @sql nvarchar(1000)
    SET @sql=select +@column+  from +@tablename+ where 1=1+@condition
    EXEC(@sql)
END
GO
bubuko.com,布布扣

调用

bubuko.com,布布扣
EXEC [dbo].[QueryTable] userinfo,*,‘‘
bubuko.com,布布扣

 

存储过程——创建通用存储过程(七),布布扣,bubuko.com

存储过程——创建通用存储过程(七)

原文:http://www.cnblogs.com/tuqun/p/3661652.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!