qry2.Close;
  qry2.SQL.Clear;
  qry2.SQL.Add('insert into Q_customerend(zhanghao,chuanbiaohao,Caipinid,caipinname,caipincount,caipinprice,caipinunit,dianliexing,fangtaiid,opratename,opratedate,caipinleixing,状态)');
  qry2.SQL.Add('select zhanghao,chuanbiaohao,Caipinid,caipinname,caipincount,caipinprice,caipinunit,dianliexing,fangtaiid,opratename,opratedate,caipinleixing,:zhuan from Q_customertemp where zhanghao='+''''+dm.Qfangtai.FieldValues['zhanghao']+'''');
  qry2.Parameters.Parambyname('zhuan').Value:='已付款';
sqlserver的表中 状态 字段为 nvarchar 50字节=============================================我这么写以后,程序可以通过,不过sqlserver中的 状态 字段 只显示了“已 ” ,显示不全,真是奇怪啊,有高手解答吗

解决方案 »

  1.   

    你用sql语句在查询分析器中执行,看看结果是什么,还是只插入一个'已'吗?
      

  2.   

    qry2.Parameters.Parambyname('zhuan').Value:='已付款';
    改为:qry2.Parameters.Parambyname('zhuan').asstring:='已付款';
    看看.
      

  3.   

    呵呵,我的SQL语句是发全了,只是少了一个POST而已,不过确实是我的SQL语句写错了,原因我找到了我的SQL语句原来的意思是从一张表里读出一些字段,插入另一张表,不过其中一个字段是固定的“已付款”可是我在insert into t2(a,b,c,d) select a,b,c,:e from t1;
    Parameters.Parambyname('e').Value:='已付款';相信大家也看出错误了,只是我还有最后的疑问:为什么SQL不出错呢?而且也可以插入,而且只是中文插入不全呢,我试过了,英文是可以的,哈哈。