Sqlserver与Oracle 10g数据类型对照

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:
 
sqlserver
 

数据类型  类型  描             述 bit 整型  bit 数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或Fa lse 、On 或Off int 整型  int 数据类型可以存储从- 231(-2147483648)到231 (2147483 647)之间的整数。存储到数据库的几乎所有数值型的数据都可以用这种数据类型。这种数据类型在数据库里占用4个字节 smallint 整型  smallint 数据类型可以存储从- 215(-32768)到215(32767)之间的整数。这种数据类型对存储一些常限定在特定范围内的数值型数据非常有用。这种数据类型在数据库里占用2 字节空间 tinyint 整型  tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。 这种数据类型在数据库中占用1 个字节 numeric精确数值型  numeric数据类型与decimal 型相同 decimal 精确数值型  decimal 数据类型能用来存储从-1038-1到1038-1的固定精度和范围的数值型数据。使用这种数据类型时,必须指定范围和精度。 范围是小数点左右所能存储的数字的总位数。精度是小数点右边存储的数字的位数 money 货币型  money 数据类型用来表示钱和货币值。这种数据类型能存储从-9220亿到9220 亿之间的数据,精确到货币单位的万分之一 smallmoney 货币型  smallmoney 数据类型用来表示钱和货币值。这种数据类型能存储从-214748.3648 到214748.3647 之间的数据,精确到货币单位的万分之一 float 近似数值型  float 数据类型是一种近似数值类型,供浮点数使用。说浮点数是近似的,是因为在其范围内不是所有的数都能精确表示。浮点数可以是从-1.79E+308到1.79E+308 之间的任意数 real 近似数值型  real 数据类型像浮点数一样,是近似数值类型。它可以表示数值在-3.40E+38到3.40E+38之间的浮点数 datetime 日期时间型  datetime数据类型用来表示日期和时间。这种数据类型存储从1753年1月1日到9999年12月3 1日间所有的日期和时间数据, 精确到三百分之一秒或3.33毫秒 Smalldatetime 日期时间型  smalldatetime 数据类型用来表示从1900年1月1日到2079年6月6日间的日期和时间,精确到一分钟 cursor 特殊数据型  cursor 数据类型是一种特殊的数据类型,它包含一个对游标的引用。这种数据类型用在存储过程中,而且创建表时不能用 timestamp 特殊数据型  timestamp 数据类型是一种特殊的数据类型,用来创建一个数据库范围内的唯一数码。 一个表中只能有一个timestamp列。每次插入或修改一行时,timestamp列的值都会改变。尽管它的名字中有“time”, 但timestamp列不是人们可识别的日期。在一个数据库里,timestamp值是唯一的 Uniqueidentifier 特殊数据型  Uniqueidentifier数据类型用来存储一个全局唯一标识符,即GUID。GUID确实是全局唯一的。这个数几乎没有机会在另一个系统中被重建。可以使用NEWID 函数或转换一个字符串为唯一标识符来初始化具有唯一标识符的列 char 字符型  char数据类型用来存储指定长度的定长非统一编码型的数据。当定义一列为此类型时,你必须指定列长。当你总能知道要存储的数据的长度时,此数据类型很有用。例如,当你按邮政编码加4个字符格式来存储数据时,你知道总要用到10个字符。此数据类型的列宽最大为8000 个字符 varchar 字符型  varchar数据类型,同char类型一样,用来存储非统一编码型字符数据。与char 型不一样,此数据类型为变长。当定义一列为该数据类型时,你要指定该列的最大长度。 它与char数据类型最大的区别是,存储的长度不是列长,而是数据的长度 text 字符型  text 数据类型用来存储大量的非统一编码型字符数据。这种数据类型最多可以有231-1或20亿个字符 nchar 统一编码字符型  nchar 数据类型用来存储定长统一编码字符型数据。统一编码用双字节结构来存储每个字符,而不是用单字节(普通文本中的情况)。它允许大量的扩展字符。此数据类型能存储4000种字符,使用的字节空间上增加了一倍 nvarchar 统一编码字符型  nvarchar 数据类型用作变长的统一编码字符型数据。此数据类型能存储4000种字符,使用的字节空间增加了一倍 ntext 统一编码字符型  ntext 数据类型用来存储大量的统一编码字符型数据。这种数据类型能存储230 -1或将近10亿个字符,且使用的字节空间增加了一倍 binary 二进制数据类型  binary数据类型用来存储可达8000 字节长的定长的二进制数据。当输入表的内容接近相同的长度时,你应该使用这种数据类型 varbinary 二进制数据类型  varbinary 数据类型用来存储可达8000 字节长的变长的二进制数据。当输入表的内容大小可变时,你应该使用这种数据类型 image 二进制数据类型  image 数据类型用来存储变长的二进制数据,最大可达231-1或大约20亿字节 
 
Oracle 10g

Char(n)
 n=1 to 2000字节
 存储固定长度的字符串。默认长度为1。
  
 
Varchar2(n)
 n=1 to 4000字节
 可变长的字符串,具体定义时指明最大长度n,
这种数据类型可以放数字、字母以及ASCII码字符集(或者EBCDIC等数据库系统接受的字符集标准)中的所有符号。
如果数据长度没有达到最大值n,Oracle 会根据数据大小自动调节字段长度,
如果你的数据前后有空格,Oracle 8会自动将其删去。VARCHAR2是最常用的数据类型。
可做索引的最大长度3209。Varchar2类型的字段长度可以达到4000字节,Varchar2类型的变量长度可以达到32676字节。
 节省表空间:一个空的varchar2(2000)字段和一个空的varchar2(2)字段所占用的空间是一样的。
 
Nchar(n)
 n=1 to 2000字节
 Unicode数据类型,只能存储utf-16和utf-8的数据。存储固定长度的字符串。
  
 
Nvarchar2(n)
 n=1 to 4000字节
 Unicode数据类型,只能存储utf-16和utf-8的数据。存储变长字符串。
  
 
Long
 最大2G
 可变长字符列,最大长度限制是2GB,用于不需要作字符串搜索的长串数据,如果要进行字符搜索就要用varchar2类型。
long是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
 在不同系统间移动需要进行转换。
 
Clob
 最大4G
 存储单字节字符型数据。适用于存储超长文本。
  
 
Nclob
 最大4G
 存储多字节国家字符型数据。适用于存储超长文本。
  
 
Blob
 最大4G
 存储二进制数据。适用于存储图像、视频、音频等。
  
 
Bfile
 最大长度是4GB
 在数据库外部保存的大型二进制对象文件,最大长度是4GB。这种外部的LOB类型,通过数据库记录变化情况,但是数据的具体保存是在数据库外部进行的。
Oracle 可以读取、查询BFILE,但是不能写入,不参与事务。
  
 
Number(m,n)
 m=1 to 38
n=-84 to 127
 存储整数或浮点数。可变长的数值列,允许0、正值及负值,m是所有有效数字的位数,n是小数点以后的位数。
如:number(5,2),则这个字段的最大值是99,999,如果数值超出了位数限制就会被截取多余的位数。
如:number(5,2),但在一行数据中的这个字段输入575.316,则真正保存到字段中的数值是575.32。
如:number(3,0),输入575.316,真正保存的数据是575。
  
 
Date
  
 数据类型用来存储日期和时间格式的数据。默认格式:DD-MON-YYYY。从公元前4712年1月1日到公元4712年12月31日的所有合法日期
  
 
Row(n)
 n=1 to 2000
 可变长二进制数据,在具体定义字段的时候必须指明最大长度n,Oracle 用这种格式来保存较小的图形文件或带格式的文本文件,如Miceosoft Word文档。
raw是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
  
 
LongRow
 最大长度是2GB。
 可变长二进制数据,最大长度是2GB。Oracle 用这种格式来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件。
在同一张表中不能同时有long类型和long raw类型,long raw也是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。
  
 
Rowid
  
 数据类型是ORACLE数据表中的一个伪列,它是数据表中每行数据内在的唯一的标识。
 
[url=http://blog.csdn.net/zztp01/archive/2010/01/22/5223512.aspx][/url] 

常用SQL数据类型和Java数据类型的对应关系

SQL数据类型Java数据类型tinyintbytesmallintshortintegerintbigintlongreal,numberfloatfloat,doubledoublebitbooleanbinary,varbinary,longvarbinarybyte[]char,varchar,longvarcharStringdateDatetimeTimetimestampTimestamp



     本文转自My_King1 51CTO博客,原文链接:http://blog.51cto.com/apprentice/1360653,如需转载请自行联系原作者





相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
9月前
|
存储 SQL
Sql Server 中char、nchar、varchar、nvarchar这几种数据类型的区别
Sql Server 中char、nchar、varchar、nvarchar这几种数据类型的区别
139 0
|
9月前
|
SQL 存储 XML
数据库视频第四章(sql server 2008数据类型、对于表的管理、规则的创建与删除)
数据库视频第四章(sql server 2008数据类型、对于表的管理、规则的创建与删除)
75 0
|
10月前
|
SQL Oracle 关系型数据库
一种SqlServer数据迁移到Oracle的方法总结
一种SqlServer数据迁移到Oracle的方法总结
377 0
|
存储 SQL Go
|
存储 Oracle 关系型数据库
MySQL数据库: 添加列、修改列、删除列、修改列属性、修改表名(包括MySQL、SQLServer、Oracle)
MySQL数据库: 添加列、修改列、删除列、修改列属性、修改表名(包括MySQL、SQLServer、Oracle)
399 0
MySQL数据库: 添加列、修改列、删除列、修改列属性、修改表名(包括MySQL、SQLServer、Oracle)
|
SQL 存储 Oracle
数据库深度剖析:Oracle、Microsoft SQL Server、MySQL 三者有何区别?
数据库深度剖析:Oracle、Microsoft SQL Server、MySQL 三者有何区别?
162 0
数据库深度剖析:Oracle、Microsoft SQL Server、MySQL 三者有何区别?
|
SQL 存储 数据库
数据库原理与应用(SQL Server)笔记 第八章 用户自定义数据类型与变量
数据库原理与应用(SQL Server)笔记 第八章 用户自定义数据类型与变量
数据库原理与应用(SQL Server)笔记 第八章 用户自定义数据类型与变量
|
Oracle 关系型数据库 数据库
|
SQL Oracle 前端开发
基于多数据源零代码同时生成多个数据库CRUD增删改查RESTful API接口——MySql,PostgreSql,Oracle,Microsoft SQL Server
利用spring boot多数据源功能,可以同时支持不同类型数据库mysql,oracle,postsql,sql server等,以及相同类型数据库不同的schema。零代码同时生成不同类型数据库增删改查RESTful api,且支持同一接口中跨库数据访问二次开发。在同一个Java程序中,通过多数据源功能,不需要一行代码,我们就可以得到不同数据库的基本crud功能,包括API和UI。
169 0
基于多数据源零代码同时生成多个数据库CRUD增删改查RESTful API接口——MySql,PostgreSql,Oracle,Microsoft SQL Server
|
存储 SQL XML
SQL Server数据库数据类型详解
SQL Server数据库数据类型详解
221 0

推荐镜像

更多