我写了个存储过程
PROCEDURE procAddDebtor 
@Opf_fmtGrop_AutoID varchar(20),
@F1 varchar(50),
@F2 varchar(50)AS
declare @ACC_NO varchar(3)
declare @DEB_NAME varchar(3)SELECT @ACC_NO=ACC_NO, @DEB_NAME=DEB_NAME FROM Opf_fmt1 where Opf_fmtGrop_AutoID=@Opf_fmtGrop_AutoIDinsert into Opf_fmt(ACC_NO,DEB_NAME )
           select '@'+@ACC_NO,'@'+@DEB_NAME ----这个应该怎么写?????Opf_fmt 表字段名和Opf_fmt1相同。
Opf_fmt1表里面的ACC_NO,DEB_NAME 存储的是,F1,F2。我要插入Opf_fmt表时。我怎么才能把@F1,@F2变量的值根据从表Opf_fmt1提取的对应的F1,F2的值插进去。

解决方案 »

  1.   

    没看明白lz想要干什么这样不行么??PROCEDURE procAddDebtor 
    @Opf_fmtGrop_AutoID varchar(20),
    @F1 varchar(50),
    @F2 varchar(50)ASSELECT @F1=ACC_NO, @F2=DEB_NAME FROM Opf_fmt1 where Opf_fmtGrop_AutoID=@Opf_fmtGrop_AutoIDinsert into Opf_fmt(ACC_NO,DEB_NAME )
               select @F1,@F2
      

  2.   

    to LouisXIV(夜游神):
    都没搞懂我的意思。
    @F1 varchar(50),
    @F2 varchar(50)
    这个是传过来的数据。不是变量。
    我是从表Opf_fmt1中取字段对应传递过来的变量名,把相应的变量插入到另一个表的对应的字段中。
    Opf_fmt 表字段名和Opf_fmt1相同。
    Opf_fmt1表里面的ACC_NO,DEB_NAME 存储的是,F1,F2。,也有可能是F2,F1。也有可能某个字段是空的