来吧。都给你!

MQQ 2003-03-26 05:57:16
哥哥,姐姐:
小弟有一事相求!
我现在想做一个用SQL Server做的存储过程,由于建立的表太多,要做一个公共的增,删,改存储过程,以便其他表调用,由于技术含量太高,只知道一些基本的理论,听高手说要用到数组,但是小弟从未用过。敢问那位能帮小弟度过难关,随即奉上100分。
...全文
26 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuyunfeidu 2003-03-31
  • 打赏
  • 举报
回复
如果你要在数据库中解决你要解决的问题,要使用很多东西,而且速度奇慢。你最好还是使用程序调用吧。
MQQ 2003-03-31
  • 打赏
  • 举报
回复
gaobochina(皮皮)
谢了
我回去试试。
gaobochina 2003-03-30
  • 打赏
  • 举报
回复
declare @des_str varchar(4000)
declare @str_maxlen int
set @des_str='aa,bb,cc,dd,ee,' --字符串
set @str_maxlen=5 --字符串中","的个数


declare @step int
declare @num1 int
declare @str1 varchar(20)
declare @num2 int
set @step=0
set @num1=0
set @num2=0

while @step<@str_maxlen
begin
set @num1=charindex(',',@des_str,@num2)
set @str1=substring(@des_str,@num2,@num1-@num2)
set @num2=@num1+1
set @step=@step+1

select @str1 --依次取出
end
MQQ 2003-03-27
  • 打赏
  • 举报
回复
newdongkui(老乌鸦)多谢指点,不过可不可一讲的再明白一些,我没用过 XML望这位大哥指点小弟一二。

gaobochina(皮皮) 这位人兄,请问字符串分割是如何实现的。望指点小弟一下。


在这里先谢谢上面两位了。
gaobochina 2003-03-26
  • 打赏
  • 举报
回复
把表中的数据以一个字符串形式输入到存储过程中,进行字符串分割,然后实现增删改功能。
CABO 2003-03-26
  • 打赏
  • 举报
回复
这种功能用 程序很好解决,如VB/DELPHI等
但直接用数据库语言,恐怕很麻烦
newdongkui 2003-03-26
  • 打赏
  • 举报
回复
你说的数组,我不晓得
这样做并不好,需要附加条件和限制,比如SQL语句不能大于8000。对表的规范要求也高
建议方法:
参数应该用XML形式(包括表名、更新方式、字段名及内容)
读XML
有效性判断
写动态SQL语句(注意加事务控制语句)
执行

MQQ 2003-03-26
  • 打赏
  • 举报
回复
我还是有点不太理解,大哥只解决了表的动态变化,但是表里的字段和记录的增,删,改还没有解决! 麻烦大哥在想想!
pengdali 2003-03-26
  • 打赏
  • 举报
回复
create proc 名
@表名 varchar(100)
as
exec('select * from '+@表名)
go



--???
pengdali 2003-03-26
  • 打赏
  • 举报
回复
数组???

SQL没有数组!

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧