sql存储过程 1查询;2插入;3更新;4删除

原创 2007年09月30日 09:36:00
CREATE PROCEDURE dbo.p
   
@actions int,  --对表的操作类型:1--查询;2--插入;3--更新;4--删除
    @tablename varchar(50), --传入的表名
    @fields varchar(5000), --传入的字段参数
   
@filters varchar(5000), --传入的过滤条件
   
@sort varchar(50--传入的排序字段
AS
   
declare @sqlstr varchar(1000)
   
if @actions = 1   --检索数据
       
BEGIN
            
if @fields <> ''   --如果传入的检索字段不为空,则检索指定的字段
                  set @sqlstr = 'select ' + @fields + ' from '+ @tablename
            
else
                 
set @sqlstr = 'select * from '+ @tablename
            
if @filters <> ''   --如果传入的过滤条件不为空,则检索指定条件的sql
                  set @sqlstr = @sqlstr + ' where ' + @filters
            
if @sort <> ''  --如果传入的排序字段不为空,则按指定的字段排序
              set @sqlstr = @sqlstr + ' order by ' + @sort

            
exec(@sqlstr)  --执行检索
   
END

   
if @actions = 2   --插入数据")
       
exec('insert into '+ @tablename + ' (' + @fields + ') values(' + @filters + ')')

   
if @actions = 3   --更新数据")
   
BEGIN
        
if @filters <> ''   --如果传入的过滤条件不为空,则更新指定条件的行")
             exec('update '+ @tablename + '  set ' + @fields + ' where ' + @filters )
        
else
            
exec('update '+ @tablename + '  set ' + @fields ) --更新所有行
   
END

   
if @actions = 4   --删除数据")
   
BEGIN
        
if @filters <> ''   --如果传入的过滤条件不为空,则删除指定条件的行")
             exec('delete from '+ @tablename + '  where ' + @filters)
        
else
            
exec('delete from '+ @tablename)     --删除所有行
      
END

   
if @@ERROR = 0
       
RETURN 0
   
GO

--调用---
--
-p 1,'[link] as a',' top 32 *',' checked=1 and paiming is not null and logoURL is null ','paiming' 

相关文章推荐

row_number over(order by id desc)语句进行存储过程高效分页,百度分页(1,2,3,4,5....)

模仿百度分页示意效果图: sql procdure code: create   proc [dbo].[MyPages](  @tableName varchar(155),  @pag...

简单有效的SQL 存储过程移植方案(3)——从Sybase 到DB2

简单有效的SQL Stored Procedure移植方案 (3) 简单有效的SQL Stored Procedure移植方案 (3) 情况2:在乎时间的格式,需要具体情况具体改写。 ...

简单有效的SQL 存储过程移植方案(1)——从Sybase 到DB2

简单有效的SQL Stored Procedure移植方案 (1) 本文将介绍一套简单有效的移植方案,指导从Sybase到DB2 V9 FOR Z/OS 的SQL Stored Procedure的...

事务的两种用法(1.在SQL中写存储过程 2.在ADO.NET中处理)各有优点

事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。 通过事务,SQL Server能将逻辑相关的一组操作绑定在一起,以...

在sqlserver存储过程中给in参数传带逗号值的办法,如传'1','2','3'这样的

在sqlserver存储过程中给in参数传带逗号值的办法,如传’1’,’2’,’3’这样的 最近在一项目修改中,要在存储过程中给in参数传值,语句写的也对,但怎么执行都得不出结果...

LINQ(LINQ to SQL)之调用存储过程的添加、查询、更新和删除

介绍 以Northwind为示例数据库,DLINQ(LINQ to SQL)之调用指定存储过程的添加操作、查询操作、更新操作和删除操作 示例 相关的存储过程 ALTER PROCE...

Hibernate-Criteria查询(3)DetachedCriteria构造查询条件、命名查询、原生SQL、调用存储过程(使用JDBC)

package junit.test;import static org.junit.Assert.*;import java.sql.CallableStatement; import java.s...

边缘Dvbbs v7.1 SP1 SQL存储过程增强版

  • 2006年04月05日 10:37
  • 3.78MB
  • 下载

通用的可带查询条件的SQL语句的分页存储过程(2)

代码二: CREATE PROCEDURE pagination @tblName varchar(255), – 表名 @strGetFields varchar(1000) = ‘...
  • tlammon
  • tlammon
  • 2016年03月25日 10:10
  • 805

IBM DB2 SQL存储过程

  • 2007年06月26日 11:22
  • 4.98MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sql存储过程 1查询;2插入;3更新;4删除
举报原因:
原因补充:

(最多只允许输入30个字)