Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数据从Oracle PLSQL导出到Excel时,会出现格式问题_Oracle_Plsql - Fatal编程技术网

将数据从Oracle PLSQL导出到Excel时,会出现格式问题

将数据从Oracle PLSQL导出到Excel时,会出现格式问题,oracle,plsql,Oracle,Plsql,我正在尝试将数据从Oracle PLSQL导出到Excel。 其中一列的数据类型为VARCHAR2。 列conatins的值类似于00798019859217。 但导出后,excel中的值类似于7.9802E+11 请让我知道如何解决此问题以及此格式问题的原因 提前感谢。这是由于excel自动输入了数字。正如@HamidP所说的,尝试导出为csv,并在记事本或文本中打开检查,检查数字是否完全显示。如果是这样的话,您可以在Excel中用小选项打开相同的文件,例如更改 在单元格上单击鼠标右键,然后单

我正在尝试将数据从Oracle PLSQL导出到Excel。 其中一列的数据类型为VARCHAR2。 列conatins的值类似于00798019859217。 但导出后,excel中的值类似于7.9802E+11

请让我知道如何解决此问题以及此格式问题的原因


提前感谢。

这是由于excel自动输入了数字。正如@HamidP所说的,尝试导出为csv,并在记事本或文本中打开检查,检查数字是否完全显示。如果是这样的话,您可以在Excel中用小选项打开相同的文件,例如更改

在单元格上单击鼠标右键,然后单击“格式”选项,将其设置为文本格式,然后保存excel。

执行以下操作:

  • 选择带有单引号的列,例如

    SELECT ("'" || COLUMN_NAME) AS COLUMN_NAME, OTHER_COLUMNS FROM MY_TABLE
    
    输出如下所示:

    'ABC0157976
    '00798019859217
    
  • 将输出导出到excel。excel中的“A”列值将为

    'ABC0157976
    00798019859217   (Single quote will not be visible for number only values)
    
  • 选择整个“A”行,并使用“全部替换”选项清除所有单引号。您将获得最终的excel作为

    ABC0157976
    00798019859217 
    

  • 由于它是一个文本字段,并且预期也会出现非数字字符,因此需要执行步骤#3。如果只是数字字符,然后可以忽略步骤#3。

    尝试导出到csv而不是Excel SQL Server中没有数据类型
    VARCHAR2
    。尝试在前面用一个引号导出。当您将SQL Server标记为Oracle和PLSQL时,此问题中对SQL Server的引用有什么相关性?您好,谢谢您的回答。对于某些行,列值将为null。在这种情况下,excel中只有一个引号(')。如何避免…使用SELECT(“”| | NVL(COLUMN_NAME,'DUMMY_VALUE')作为COLUMN_NAME。在步骤#3之后,还要清除所有包含值为“DUMMY_VALUE”的单元格@karthika:如果这个答案对您有帮助,请单击旁边的灰色标记接受答案。谢谢!