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'
转载请注明原文地址: https://ibbs.8miu.com/read-27170.html