oracle与sql类型转换
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果不确定,则使用numeric;它最接近Oracle NUMBER数据类型。
NUMBER
Float(4或者8字节)
Float是一种近似的值,SQL Server执行四舍五入。
NUMBER([1-38])
NUMERIC([1-38])
NUMBER([0-38],[1-38])
NUMERIC([0-38],[1-38])
FLOAT
FLOAT
FLOAT([1-53])
FLOAT([1-53])
FLOAT([54-126])
FLOAT
REA(18)
UROWID
CHAR(18)
DATE
DATETIME
TIMESTAMP
DATETIME
INTERVAL
DATETIME
XMLType
XML(1B-2GB)
NCLOB
大型的NCHAR类型数据
[1B-4GB]
nvarchar(max)
指定(max)选项就可以突破8KB的限制,该选项允许存储最多2GB的存储空间。
BFILE
存放在数据库外的大型的二进制文件
[1B-4GB]
varbinary(max)
指定(max)选项就可以突破8KB的限制,该选项允许存储最多2GB的存储空间。
INT
NUMERIC(38)
NUMBER
如果整数在1和255之间,使用tinyint。
如果整数在-32768和32767之间,使用smallint。
如果整数在-2,147,483,648和2,147,483,647之间,则使用int。
如果需要浮点类型数,使用numeric(有精度和小数位)。
注意:不要使用float或real,因为可能会产生舍入(Oracle NUMBER和SQL Servernumeric均不舍入)。
可变长度的二进制数据类型。除了只占用存储数据必须的存储空间外,varbinary和binary类型相同。使用(max)选项允许存储至多2GB的二进制数据,但只能使用1-8000和(max)存储选项。
CLOB
大型的CHAR类型数据
[1B-4GB]
Varchar(max)
指定(max)选项就可以突破8KB的限制,该选项允许存储最多2GB的存储空间。
Xml数据类型用于保存格式正确的XML。所存储的XML可以是格式正确的片段或者完整的文档,可以强制对变量、参数或包含XML数据的列强制绑定XML模式。
CURRVAL, NEXTVAL
使用identity列类型以及@@IDENTITY、IDENT_SEED()和IDENT_INCR()函数。
VARCHAR2
([1B-4KB])
Varchar(每个字符一字节【1B-8KB】)或text(每个字符一字节[1B-2GB])。(如果Oracle列中数据值的长度为8000字节或更少,则使用varchar;否则,必须使用text。)
LONG
([1B-2GB])
Varchar(max)该选项允许存储最多2GB的存储空间。
RAW ([1B-2KB])
Varbinary(1B-8KB)或image(1B-2GB)。(如果Oracle列中数据值的长度为8000字节或更少,则使用varbinary;否则,必须使用image。)
LONG RAW
([1B-2GB])
image(1B-2GB)
image数据类型和Varbinary类型相似,原因是它也是一种可变长度的二进制数据类型。这两种类型最大的区别在于,可保存的数据长度不同;数据保存的物理位置不同:Varbinary类型的数据与行中其他列上的数据在物理上是保存在一起的,而对于image数据类型,类型为image的列的数据与行的其他部分是分开保存的,行上只保存了一个指针,SQL SERVER通过这个指针找到数据。Image类型通常用于保存图像、二进制文件和二进制对象,image数据类型与vachar(max)类型的功能相同。
或text(每个字符一字节[1B-2GB])。(如果Oracle列中数据值的长度为8000字节或更少,则使用varchar;否则,必须使用text。)
NVARCHAR2
([1B-4KB])
nvarchar(每个字符2字节,【1B-2GB】)
BLOB
大型的二进制对象(可变长度)[1B-4GB]
varbinary(max)
From Oracle To SQL Server
Oracle
Microsoft SQL Server
CHAR
([1B-2KB])
建议使用char(每个字符一字节【1B-8KB】)。因为char类型的列使用固定的存储长度,所以,访问时比varchar列要快一些。
NCHAR
([1B-2KB])
nchar(每个字符2字节【1B-8KB】)
NUMBER
Float(4或者8字节)
Float是一种近似的值,SQL Server执行四舍五入。
NUMBER([1-38])
NUMERIC([1-38])
NUMBER([0-38],[1-38])
NUMERIC([0-38],[1-38])
FLOAT
FLOAT
FLOAT([1-53])
FLOAT([1-53])
FLOAT([54-126])
FLOAT
REA(18)
UROWID
CHAR(18)
DATE
DATETIME
TIMESTAMP
DATETIME
INTERVAL
DATETIME
XMLType
XML(1B-2GB)
NCLOB
大型的NCHAR类型数据
[1B-4GB]
nvarchar(max)
指定(max)选项就可以突破8KB的限制,该选项允许存储最多2GB的存储空间。
BFILE
存放在数据库外的大型的二进制文件
[1B-4GB]
varbinary(max)
指定(max)选项就可以突破8KB的限制,该选项允许存储最多2GB的存储空间。
INT
NUMERIC(38)
NUMBER
如果整数在1和255之间,使用tinyint。
如果整数在-32768和32767之间,使用smallint。
如果整数在-2,147,483,648和2,147,483,647之间,则使用int。
如果需要浮点类型数,使用numeric(有精度和小数位)。
注意:不要使用float或real,因为可能会产生舍入(Oracle NUMBER和SQL Servernumeric均不舍入)。
可变长度的二进制数据类型。除了只占用存储数据必须的存储空间外,varbinary和binary类型相同。使用(max)选项允许存储至多2GB的二进制数据,但只能使用1-8000和(max)存储选项。
CLOB
大型的CHAR类型数据
[1B-4GB]
Varchar(max)
指定(max)选项就可以突破8KB的限制,该选项允许存储最多2GB的存储空间。
Xml数据类型用于保存格式正确的XML。所存储的XML可以是格式正确的片段或者完整的文档,可以强制对变量、参数或包含XML数据的列强制绑定XML模式。
CURRVAL, NEXTVAL
使用identity列类型以及@@IDENTITY、IDENT_SEED()和IDENT_INCR()函数。
VARCHAR2
([1B-4KB])
Varchar(每个字符一字节【1B-8KB】)或text(每个字符一字节[1B-2GB])。(如果Oracle列中数据值的长度为8000字节或更少,则使用varchar;否则,必须使用text。)
LONG
([1B-2GB])
Varchar(max)该选项允许存储最多2GB的存储空间。
RAW ([1B-2KB])
Varbinary(1B-8KB)或image(1B-2GB)。(如果Oracle列中数据值的长度为8000字节或更少,则使用varbinary;否则,必须使用image。)
LONG RAW
([1B-2GB])
image(1B-2GB)
image数据类型和Varbinary类型相似,原因是它也是一种可变长度的二进制数据类型。这两种类型最大的区别在于,可保存的数据长度不同;数据保存的物理位置不同:Varbinary类型的数据与行中其他列上的数据在物理上是保存在一起的,而对于image数据类型,类型为image的列的数据与行的其他部分是分开保存的,行上只保存了一个指针,SQL SERVER通过这个指针找到数据。Image类型通常用于保存图像、二进制文件和二进制对象,image数据类型与vachar(max)类型的功能相同。
或text(每个字符一字节[1B-2GB])。(如果Oracle列中数据值的长度为8000字节或更少,则使用varchar;否则,必须使用text。)
NVARCHAR2
([1B-4KB])
nvarchar(每个字符2字节,【1B-2GB】)
BLOB
大型的二进制对象(可变长度)[1B-4GB]
varbinary(max)
From Oracle To SQL Server
Oracle
Microsoft SQL Server
CHAR
([1B-2KB])
建议使用char(每个字符一字节【1B-8KB】)。因为char类型的列使用固定的存储长度,所以,访问时比varchar列要快一些。
NCHAR
([1B-2KB])
nchar(每个字符2字节【1B-8KB】)