用asp循環執行insert語句,報錯:
資料欄的插入值過大,
  cmdsql="insert into wip.xwp_xblv2_wef600_lyh(CHILD_ID,CHILD_NAME,CHILD_QTY,PARENT_ID,PARENT_NAME,CHILD_DESC,PARENT_DESC,TRANSACTION_DATE,qty_wef600)" 
  cmdsql=cmdsql &" values('"&CHILD_ID&"','"&CHILD_NAME&"','"&CHILD_QTY&"','"&PARENT_ID&"','"&PARENT_NAME&"','"&CHILD_DESC&"','"&PARENT_DESC&"',to_date('"&TRANSACTION_DATE&"','YYYY-MM-DD'),'"&qty_wef600&"')"  但是如果把sql語句中的變量換成常量,
還是用asp循環執行insert語句,卻沒報錯,
  cmdsql="insert into wip.xwp_xblv2_wef600_lyh(CHILD_ID,CHILD_NAME,CHILD_QTY,PARENT_ID,PARENT_NAME,CHILD_DESC,PARENT_DESC,TRANSACTION_DATE,qty_wef600)" 
  
 cmdsql=cmdsql &" values('1','1','1','1','1','1','1',to_date('"&TRANSACTION_DATE&"','YYYY-MM-DD'),'1')" 為什麼會這樣呢??????

解决方案 »

  1.   

    你替换的常量和变量得到的值是一样的吗?
      

  2.   

    -- 估计是这个原因:
    -- 不同的工具其默认字符集不尽相同;同一个字符在不同的字符集中,其所占字节数也不尽相同!
      

  3.   


    不一样  你这么测试 也不代表ok啊~~   还仍然可能是你插入的某个栏位 太长了
      

  4.   

    建议你把常量的值设置的和程序运行时的值一样
    这样你就容易找到是哪个字段出现问题了。。
      

  5.   

    你把你变量的数据拿到,再把这些数据用常量的形式来插入确认是不是字段的值太长了