Ⅰ oracle可以存放哪些数据
数据库表其实是一种逻辑结构,你可以按照这种结构来存放记录
你所说的这些“视频,文档,音频,exe”文件,按正常来说是可以存放到表中的某个字段中,
但是数据库表中的字段都是有大小限制的,所以一般的解决办法是,只存放一个文件所在的路径,把文件放在web服务器相应的地方,需要的时候,通过数据库的路径去找你存放的文件。
Ⅱ oracle每行对多可以存储多少字节
数据类型转换 3.1 异构数据源数据类型概述 对不同数据库系统,每个DBMS都定义了一套自己的数据类型,但不论数据类型在各个系统中如何变化,其功能都满足用户的数据处理基本要求,如数值型,包括整型、实型、浮点型、双精度型等;字符型,包括定长、变长等;日期型,包括年、月、日和小时、分、秒等;长字符型,包括文本类型,还有钱币型等。随着数据库系统的不断发展和版本的不断升级,数据类型的种类也不断增多,如超文本和二进制处理多媒体和大文本的数据类型。这些带有共性的东西,给系统间的数据转换带来了可能和方便,但不同的数据库的数据类型也是有差异的。其自身定义和扩充之间的区别,也给系统间的数据转换带来了许多困难。例如,DBMS返回的日期和时间数据格式在各个DBMS中有很大的不同。有些系统以8字节整数格式返回日期和时间,另外一些以浮点数格式返回。并且有的DBMS含有LONG类型,其它DBMS无此类型。所以异种数据库数据类型转换的关键是找出其中的对应关系。 3.2 数据类型转换方法一(设计类型映射表) 为了实现相互数据转换,必须设计多个相应的双向数据转换程序并且解决不同的数据类型匹配问题。当增加一个数据库系统时,相应要解决该数据库系统与已存在的多个异构库的数据类型匹配问题,并增加多个对应转换程序。为了实现程序的扩展性,可以通过设计类型映射表来解决类型转换问题。 将不同数据库系统数据类型的对应关系和相应的数据转换处理程序分离开,使数据转换程序相对独立,而把类型转换关系在专门的表结构中存储。通过对不同数据库系统之间的数据类型进行详细而深入的分析,找出了不同数据库系统不同版本的各个不同类型之间缺省的类型对应关系及可能存在的对应关系,将这些数据预先存入类型映射表中。 3.3 数据类型转换方法二(利用ODBC SQL类型) 存储在数据源中的数据都有一个数据类型,称为数据源数据类型或SQL数据类型。SQL数据类型是按照SQL-92标准由每一个DBMS定义,可以是某个数据源特有的。驱动程序在ODBC SQL语法及驱动程序数据类型中也定义了一套数据类型称为ODBC SQL数据类型(以SQL前缀开头的数据类型)。每个驱动程序负责映射特定数据来源的SQL数据类型到ODBC SQL数据类型标识符。因此,不同的数据源在进行数据转换的过程中可以通过ODBC SQL数据类型标识符作为基准来得到数据类型的缺省映射关系。驱动程序通过函数SQLGetTypelnfo返回数据源的SQL数据类型和ODBC SQL数据类型的映射关系,在函数SQLCo1Attributes,SQLDescribeCol和 SQLDescribeParm中,驱动程序还用ODBC SQL数据类型来描述列和参数的数据类型。 此外,ODBC还提供一套以SQL_C前缀开头的ODBC C数据类型。ODBC C数据类型指出了在应用程序中用于存储数据的C缓冲区的数据类型。所有驱动程序必须支持所有的C数据类型,而且支持所有C类型到相应的SQL类型的转换,并且所有的驱动程序至少支持字符SQL类型,使得DBMS的数据类型都能映射到一种C语言的数据类型,这样在传递过程中不会改变数据。每一个SQL数据类型与一个ODBC C数据类型相适应。在从数据源返回数据之前,驱动程序将它转换到指定的C数据类型。在发送数据到数据来源之前,驱动程序将它从指定C数据类型转换到SQL数据类型。 4 数据转换过程中大对象的处理 4.1 大对象类型概述 大对象类型BLOB全称为Binary Large Objects,即二进制大对象。可以把BLOB区别为三种形式:声像数据、二进制数据和大文本数据。因此,最常见的应用就是存储图形、声音等对象,此外大二进制对象、OLE对象也可以通过BLOB类型存入数据库,如果文本对象过大,超出了文本类型的规定长度,则必须用BLOB字段进行存储。我们在经常使用的编程环境中并不能直接支持BLOB字段,因此需要调用相应的函数完成BLOB的使用。 不同的数据库系统对大对象类型的支持不同,常用数据库系统支持的大对象数据类型如表4所示: 表4数据库系统支持的大对象数据类型 数据库系统 大对象类型 SQL SERVER "sql_variant","ntext","image","varbinary","binary","text" ORACLE "BLOB","LONG RAW","BFILE","RAW","CLOB","LONG" SYBASE "LONG VARCHAR"VFP "MEMO"ACCESS "OLE OBJECT","MEMO" KINGBASE "blob","text","bytea","varbinary","binary","text" 4.2 大对象的存取方法 1)利用MFC提供的CLongBinary类 VC存取大对象数据有众多方法,如OLE、ActiveX等,而VC的MFC提供的CLongBinary类可以方便地实现存取BLOB字段。使用CLongBinary类可以存取超过MAXINT数目的数据,最大为可以得到的内存容量。但数据完全保存在内存中,对超大量数据消耗太大。 2)利用ODBC的SQLGetData和SQLPutData函数 对于不能存储在单一缓冲区中的数据,在行中的其他数据已被获取之后,可以直接用SQLGetData分批从驱动程序检索这些数据。为了从一列检索长数据,应用程序首先调用SQLFetchScroll或SQLFetch移动一行,并且调用SQLGetData获取绑定列的数据。
Ⅲ oracle 分区表可以装多少数据
一般不按照数据量计算,oracle给的建议是2G,数据量能大于2G,那么就需要分区。具体的数据量没给那么清晰。
不过个人认为,是否需要分区要根据实际需求来判断,比如几百万的数据量,总会按月查询,每月大概几十万到一百万左右,那么就可以分区,这样可以减少查询等待时间,并且减少一次查询的数据量。
Ⅳ oracle一个表最多能存储多少数据
64位linux 和64位oracle,默认oracle表空间数据文件用的BLOCKSIZE是8k,表空间数据文件最大是32G。
SQL>show parameter k_cache_size
查看数据库默认的块大小
SQL> show parameter db_block_size
db_block_size
Ⅳ 一个oracle表最多可以存多少条记录
如果,一个tablespace中包含1022个datafiles,
那么,单个datafiles的最大是32G
如果,每个block是16k,每个block中有160条记录,
每个表就是(1024*1024)-1个分区表
一个表空间tablespace的最大值:datafile个数 × 单个datafile的大小
1022 × 32G =32704 G
Ⅵ oracle 里的表 最多存放多少行的数据
中有一些英文资料,可以参考一下:
MAXEXTENTS. Specifies the largest number of extents allowed the object. This defaults to the max allowed for your blocksize for Oracle8, Oracle8i, and Oracle9i. In addition, if UNLIMITED is set, there is no upper limit.
大概意思,仅供参考:
最大范围:指定对象允许的最大值范围,最大值由Oracle8、Oracle8i和Oracle9i的块大小所默认。 另外,如果设置UNLIMITED,是没有上限的
Ⅶ oracle 可以存在多少数据量
目前用的最多的oracle数据库中数据表单表36亿条记录,完全没问题;就性能考虑的话,单表不要超过20亿
Ⅷ oracle数据库一张表最大存多少条数据
1、64位linux 和64位oracle,默认oracle表空间数据文件用的BLOCKSIZE是8k,表空间数据文件最大是32G。
SQL>show parameter k_cache_size
查看数据库默认的块大小
SQL> show parameter db_block_size
db_block_size integer 8192
2、为了让一个表空间数据文件存64G,你需要告诉oracle用BLOCKSIZE 是16k
CREATE TABLESPACE TEST DATAFILE ‘/data1/test_ts1.dbf’ SIZE 512M AUTOEXTEND ON NEXT 256M MAXSIZE UNLIMITED BLOCKSIZE 16k;
提前需要设置db_16k_cache_size
alter system set db_16k_cache_size=16M scope=both;
否则会报错ORA-29339:
tablespace block size 16384 does not match configured block sizes
3、为了让一个表空间数据文件存128G,你需要告诉oracle用BLOCKSIZE 是32k
4、32位linux 和32位oracle,默认oracle表空间datafile用的BLOCKSIZE也是8k,表空间数据文件最大也是32G。试了一下64G文件,也没有问题。
Ⅸ oracle多少数据量达到
1、查看所有表空间及表空间大小:
select tablespace_name ,sum(bytes) / 1024 / 1024 as MBfrom dba_data_files group by tablespace_name;
2、查看所有表空间对应的数据文件:
select tablespace_name,file_name from dba_data_files;
3、修改数据文件大小:
alter database datafile 'H:\ORACLE\PRODUCT\10.1.0\ORADATA\ORACLE\USERS01.DBF' RESIZE 10240M;