declare @s varchar(100)
SET @s='insert "+@table+'('+@fld1+','+@fld2'+')values('+@value1+','+
@value2+')'
execute(@S)

解决方案 »

  1.   

    昨天一天csdn都是有问题,这个问题后来解决了。但我还想问另外一个问题. 借这个贴子,其实不应该的,但可用分只剩下没了,希望你们能谅解。
    问题:
    有三个表,一个Ytfwh表,一个是cgddmxb, 一个是自己创建的#cgddmxb
    cgddmxb和#cgddmxb的结构是一样的。 cgddh,         key_id, cbh,       sl,   dj
    2002-02-01     1        3         2     5
    2002-02-01     2        3         5     5
    以 cgddh+key_id+cbh(作为唯一标识这条记录的键).
    用临时表也就是把cgddmxb表的内容调出到#cgddmxb来改,改完之后又写回到cgddmxb ,在这改的过程有可能修改了 dj,sl, cbh,也有可能删除掉某条记录, 或者增加了某条记录。
    (cgddmxb有非常多的记录,但调出来的可能是其中的一些数据, 以(cgddh='...' and key_id='001' and cbh='0001'过滤出来的数据。)
    最后要#cgddmxb和cgddmxb的内容一至 
    第三个的结构是Ytfwh表,结构
    whbh,   cbh, sl
    仓库1   001  10每次对cgddmxb增加,删除, 修改 他的sl会发生变化, 会增加或者增少,
    增加了多少,减少了多少都写到 Ytfwh表。 大侠你们能明白我的意思吗? 
      

  2.   

    我再把问题说清楚点,我只会这点sql,针对#cgddmxb的修改,增加,删除,最后都会更新到cgddmxb.
    在更新的过程中,
    1.在#cgddmxb中有,在cgddmxb中没有的记录就把 (#cgddmxb的该条记录写入到cgddmxb中,(同时还要更新ytfwh表,把#cgddmxb.cbh这条记录添加到ytfwh表,ytfwh表以whbh+cbh为主键的)2.要更新 cgddmxb中对应#cgddmxb中已经存在的记录, (同时会发生sl的变化,数据增加,减少了多少要修改到ytfwh表对应的 whbh+cbh的这条记录).但在ytfwh表中不增加记录。3.在cgddmxb中有 但在#cgddmxb中没有的记录,(首先要把在cgddmxb中的
    whbh+cbh对应的ytfwh表里的whbh+cbh的这条记录sl的 值 减去cgddmxb中的
    这条记录的sl的值) 然后再删除在 cgddmxb 中有,但在#cgddmxb中没有的记录。
      

  3.   

    这个问题已经解决。请 Chiff(~o~) 来领分。 谢谢你
    http://expert.csdn.net/Expert/topic/1198/1198667.xml?temp=.7984125