2016-09-29 79 views
0

我插入数据与下面的查询表中插入数据..不是有效的一个月,而在Oracle

INSERT INTO xxcus.xxacl_pn_agrmnt_mst 
     (mkey, transaction_type, survey_area_7_12, ref_date, status, 
     mst_date, remarks, tran_type, created_by, creation_date, 
     last_update_date, last_updated_by, delete_flag 
     ) 
VALUES (1, 'AGR', 'khan,', '29-09-2016', 'AGD', 
     '11/09/2016', 'Test', 'AM', '5681', '29-09-2016 17:10:19', 
     '29-09-2016 17:10:19', '5681', 'N' 
     ) 

但得到错误的

不是有效的每月29-09 -2016

这是从那里我将

xw.WriteElementString("REF_DATE", txtRefdate.Value); 
代码

我不知道什么是错在这里

回答

2

你应该投你的日期列的数据类型由

to_date('29-09-2016 17:10:19', 'DD-MM-YYYY HH24:MI:SS') 
+0

让我知道如何在这里加上'GridPayInfo.Rows [intGrdPay] .Cells [GridPayInfo.Columns.GetColumnIndexByDataField(“CHEQUE_DT “)]。Text.Trim()' – BNN

+0

能否请你添加上面提到的'xw'对象的完整代码? –

1

'29-09-2016 17:10:19'是不是迄今为止,它是一个字符串。

Oracle will use the NLS_DATE_FORMAT session parameter as the format mask when implicitly converting a string to a date(即当您尝试将字符串值插入到日期列中),并且如果此格式掩码与字符串的格式不匹配,则会出现错误。

要生成的日期,你应该将字符串显式转换为日期或者通过:使用ANSI literalTIMESTAMP '2016-09-29 17:10:19'

  • 或者通过specifying the format mask used in the conversionTO_DATE('29-09-2016 17:10:19', 'DD-MM-YYYY HH24:MI:SS')

    您的查询应该是(如果您使用ANSI文本):

    INSERT INTO xxcus.xxacl_pn_agrmnt_mst (
        mkey, 
        transaction_type, 
        survey_area_7_12, 
        ref_date, 
        status, 
        mst_date, 
        remarks, 
        tran_type, 
        created_by, 
        creation_date, 
        last_update_date, 
        last_updated_by, 
        delete_flag 
    ) VALUES (
        1, 
        'AGR', 
        'khan,', 
        DATE '2016-09-29', 
        'AGD', 
        DATE '2016-09-11', 
        'Test', 
        'AM', 
        '5681', 
        TIMESTAMP '2016-09-29 17:10:19', 
        TIMESTAMP '2016-09-29 17:10:19', 
        '5681', 
        'N' 
    ) 
    
  • +0

    所以我应该如何在这里添加'GridPayInfo.Rows [intGrdPay] .Cells [GridPayInfo.Columns.GetColumnIndexByDataField(“CHEQUE_DT”)] .Text.Trim()'? – BNN

    +0

    @nad这不是SQL,我无法根据没有任何上下文的一小段代码来回答。你最好用** all **的相关代码问一个问题。制作[MCVE]。 – MT0

    相关问题