Oracle的数据类型和SQLServer的数据类型转换

今天在做SQLServer2005数据库到Oracle数据库的迁移,需要注意的是Oracle的数据类型和SQLServer的数据类型是不一样的,可以在SQLServer下运行:
SELECT *
FROM msdb.dbo.MSdatatype_mappings
SELECT *
FROM msdb.dbo.sysdatatypemappings

来查看SQLServer和其他数据库系统的数据类型对应关系。第一个SQL语句是看SQL转Oracle的类型对应,而第二个表则更详细得显示了各个数据库系统的类型对应。

ORACLE    bigint    NUMBER    19    3    1 ORACLE binary BLOB NULL    0    1
ORACLE   
binary    RAW    -1    4    1
ORACLE   
bit    NUMBER    1    3    1
ORACLE   
char    CHAR    -1    4    1
ORACLE   
char    CLOB    NULL    0    1
ORACLE   
char    VARCHAR2    -1    4    1
ORACLE   
datetime    DATE    NULL    0    1
ORACLE   
decimal    NUMBER    -1    3    1
ORACLE   
double precision    FLOAT    NULL    0    1
ORACLE   
float    FLOAT    NULL    0    1
ORACLE   
image    BLOB    NULL    0    1
ORACLE   
int    NUMBER    10    3    1
ORACLE   
money    NUMBER    19    3    1
ORACLE   
nchar    NCHAR    -1    4    1
ORACLE   
nchar NCLOB NULL    0    1
ORACLE   
ntext    NCLOB    NULL    0    1
ORACLE    numeric   
NUMBER    -1    3    1
ORACLE   
nvarchar    NCLOB    NULL    0    1
ORACLE   
nvarchar    NVARCHAR2    -1    4    1
ORACLE   
nvarchar(max)    NCLOB    NULL    0    1
ORACLE   
real    REAL    NULL    0    1
ORACLE   
smalldatetime    DATE    NULL    0    1
ORACLE   
smallint    NUMBER    5    3    1
ORACLE   
smallmoney    NUMBER    10    3    1
ORACLE    sysname    NVARCHAR2   
128    4    1
ORACLE   
text    CLOB    NULL    0    1
ORACLE   
timestamp    RAW    8    4    1
ORACLE   
tinyint    NUMBER    3    3    1
ORACLE   
uniqueidentifier    CHAR    38    4    1
ORACLE   
varbinary    BLOB    NULL    0    1
ORACLE   
varbinary    RAW    -1    4    1
ORACLE   
varbinary(max)    BLOB    NULL    0    1
ORACLE   
varchar    CLOB    NULL    0    1
ORACLE   
varchar    VARCHAR2    -1    4    1
ORACLE   
varchar(max)    CLOB    NULL    0    1
ORACLE    xml    NCLOB   
NULL    0    1
ORACLE   
bigint    NUMBER    19    3    1
ORACLE   
binary    BLOB    NULL    0    1
ORACLE   
binary    RAW    -1    4    1
ORACLE   
bit    NUMBER    1    3    1
ORACLE   
char    CHAR    -1    4    1
ORACLE   
char    CLOB    NULL    0    1
ORACLE   
char    VARCHAR2    -1    4    1
ORACLE   
datetime    DATE    NULL    0    1
ORACLE   
decimal    NUMBER    -1    3    1
ORACLE   
double precision    FLOAT    NULL    0    1
ORACLE   
float    FLOAT    NULL    0    1
ORACLE   
image    BLOB    NULL    0    1
ORACLE   
int    NUMBER    10    3    1
ORACLE   
money    NUMBER    19    3    1
ORACLE   
nchar    CHAR    -1    4    1
ORACLE   
nchar    CLOB    NULL    0    1
ORACLE   
ntext    CLOB    NULL    0    1
ORACLE    numeric   
NUMBER    -1    3    1
ORACLE   
nvarchar    CLOB    NULL    0    1
ORACLE   
nvarchar    VARCHAR2    -1    4    1
ORACLE   
nvarchar(max)    CLOB    NULL    0    1
ORACLE   
real    REAL    NULL    0    1
ORACLE   
smalldatetime    DATE    NULL    0    1
ORACLE   
smallint    NUMBER    5    3    1
ORACLE   
smallmoney    NUMBER    10    3    1
ORACLE    sysname   
VARCHAR2    128    4    1
ORACLE   
text    CLOB    NULL    0    1
ORACLE   
timestamp    RAW    8    4    1
ORACLE   
tinyint    NUMBER    3    3    1
ORACLE   
uniqueidentifier    CHAR    38    4    1
ORACLE   
varbinary    BLOB    NULL    0    1
ORACLE   
varbinary    RAW    -1    4    1
ORACLE   
varbinary(max)    BLOB    NULL    0    1
ORACLE   
varchar    CLOB    NULL    0    1
ORACLE   
varchar    VARCHAR2    -1    4    1
ORACLE   
varchar(max)    CLOB    NULL    0    1
ORACLE    xml    CLOB   
NULL    0    1
ORACLE   
bigint    NUMBER    19    3    1
ORACLE   
binary    BLOB    NULL    0    1
ORACLE   
binary    RAW    -1    4    1
ORACLE   
bit    NUMBER    1    3    1
ORACLE   
char    CHAR    -1    4    1
ORACLE   
char    CLOB    NULL    0    1
ORACLE   
char    VARCHAR2    -1    4    1
ORACLE   
datetime    DATE    NULL    0    1
ORACLE   
decimal    NUMBER    -1    3    1
ORACLE   
double precision    FLOAT    NULL    0    1
ORACLE   
float    FLOAT    NULL    0    1
ORACLE   
image    BLOB    NULL    0    1
ORACLE   
int    NUMBER    10    3    1
ORACLE   
money    NUMBER    19    3    1
ORACLE   
nchar    NCHAR    -1    4    1
ORACLE   
nchar    NCLOB    NULL    0    1
ORACLE   
ntext    NCLOB    NULL    0    1
ORACLE    numeric   
NUMBER    -1    3    1
ORACLE   
nvarchar    NCLOB    NULL    0    1
ORACLE   
nvarchar    NVARCHAR2    -1    4    1
ORACLE   
nvarchar(max)    NCLOB    NULL    0    1
ORACLE   
real    REAL    NULL    0    1
ORACLE   
smalldatetime    DATE    NULL    0    1
ORACLE   
smallint    NUMBER    5    3    1
ORACLE   
smallmoney    NUMBER    10    3    1
ORACLE    sysname    NVARCHAR2   
128    4    1
ORACLE   
text    CLOB    NULL    0    1
ORACLE   
timestamp    RAW    8    4    1
ORACLE   
tinyint    NUMBER    3    3    1
ORACLE   
uniqueidentifier    CHAR    38    4    1
ORACLE   
varbinary    BLOB    NULL    0    1
ORACLE   
varbinary    RAW    -1    4    1
ORACLE   
varbinary(max)    BLOB    NULL    0    1
ORACLE   
varchar    CLOB    NULL    0    1
ORACLE   
varchar    VARCHAR2    -1    4    1
ORACLE   
varchar(max)    CLOB    NULL    0    1
ORACLE    xml    NCLOB   
NULL    0    1

转载于:https://www.cnblogs.com/chenhong/archive/2009/01/24/1380649.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值