我用dblink 
selete A.a from A@dblink;
格式为'yyyymmddhh24miss',奈何用pl/sql把获取到的值插入本表,类型为(varchar2(20)|varchar2(30)|date|)的字段都自动转化为’**-*日-10‘的格式.尝试了to_char/to_date/to_timestamp都无法获得想要的’yyyymmddhh24miss‘原来格式、
请问高手,如何插入表后还保持原来格式???

解决方案 »

  1.   

    ?不会吧,用to_char还不成?
    贴下过程看看
      

  2.   

    SQL*Plus: Release 9.2.0.6.0 - Production on 星期一 8月 23 17:41:40 2010Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
    连接到: 
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
    With the Partitioning, OLAP and Data Mining optionsSQL> create table d1(c1 date,c2 varchar2(20));表已创建。SQL> insert into d1 select sysdate,sysdate from [email protected];已创建 1 行。SQL> select * from d1;C1         C2
    ---------- --------------------
    23-8月 -10 23-8月 -10SQL> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';会话已更改。SQL> select * from d1;C1                  C2
    ------------------- --------------------
    2010-08-23 17:42:25 23-8月 -10SQL> drop table d1;表已丢弃。SQL> create table d1(c1 date,c2 varchar2(20));表已创建。SQL> insert into d1 select sysdate,sysdate from [email protected];已创建 1 行。SQL> select * from d1;C1                  C2
    ------------------- --------------------
    2010-08-23 17:43:48 2010-08-23 17:43:48SQL> 
      

  3.   

    tangren,在存储过程可以使用这个语句吗 ? alter session set nls_date_format ='...' 
      

  4.   

    SQL> create table d1(c1 date,c2 varchar2(20));SQL> insert into d1 select sysdate,to_char(sysdate,'yyyymmddhh24miss') from [email protected];
    SQL> select to_char(c1,'yyyymmddhh24miss'),c2 from [email protected];
    这样转化完了以后还不行吗?
      

  5.   

    -- 在sql*plus的环境参数文件 glogin.sql 中添加如下一行:
    -- (位于:$ORACLE_HOME/sqlplus/admin目录下,如:D:\oracle\product\10.2.0\db_1\sqlplus\admin )
    alter seseeion set nls_date_format='yyyymmddhh24miss';
      

  6.   

    -- 这样:就不用你每次登录后,再去手动的 alter session .... 啦..