我有一个Excel文件(其中包含从Oracle 10G数据库导入的数据)其中一个字段是a 提交日期,其值为28-JAN-11 03.25.11.000000000 PM(日期字段为Oracle时间 数据库中的印章(6)
当我尝试将该Excel文件导入另一个Oracle 10 G数据库(对于另一个数据库/应用程序)时,我收到错误,因为Oracle 10G无法识别数据字段 - >导入由ORACLE SQL Developer完成(表(字段)有TIMESTAMP(6)作为数据类型)
如何导入该字段?暂时我将TIMESTAMP设置为VARCHAR2并且它正常工作,但是我无法在C#CODE中将它再次转换为Date字段(它表示不是有效的日期类型)。
答案 0 :(得分:11)
您可能需要更改SQL Developer设置。
Tools->Preferences->Database->NLS
修改“时间戳格式”字段以符合Excel电子表格中的数据格式。不是它在第一个数据库中的显示方式,而是它在电子表格中的样子。例如,在我的实例中,Excel中的数据是:
ID DT
1 05/19/2011 10:16 PM
我将首选项中的格式更改为MM / DD / YYYY HH:MI AM
并且能够在最初获得您在更改首选项之前报告的相同错误后成功导入。
如果您需要更精确的时间值,可能需要更改数据导入Excel的方式。
答案 1 :(得分:6)
在导入向导过程(列定义屏幕)中,在“源数据列”下的左侧面板中选择日期类型字段,然后在“格式”文本字段中键入预期格式。例如,MM / DD / YYYY或该字段的导入文件中的日期格式。