oracle字符存储】的更多相关文章

 substr和substrb 以前知道有substrb,lengthb等函数,也知道它们是以byte来计算长度,可没用过,也不太明白什么地方需要用到它们.一直就是用substr,length,以字符来计算长度,在我看来varchar2和char里面存的都是字符,那么自然也就不可能以byte为单位来计算长度,也就用不到这些函数了,但事实证明我错了.最近有个procedure出错,往表里insert时总是报1401错误,看了一下程序,觉得问题很奇怪,目标表出错字段的长度是50,insert的对…
原因分析: 客户端字符集就是为了让数据库知道我们传递过去的字符是属于哪种字符集,以便于Oracle在存储字符时进行相应的编码映射(查看客户端字符集通过查找注册表中的NLS_LANG键).在客户端查询数据库时显示字符的时候我们使用的是OS系统环境的默认字符集(查询OS系统环境默认字符集通过命令:chcp). 所以出现客户端查询数据时出现乱码的原因就是客户端字符集与操作系统字符集不一致. 解决方法:把客户端字符集设置成与操作系统一致的字符集.…
Oracle字符乱码.数据越界訪问典型Bug分析 前言:           作为乙方,在甲方客户那里验收阶段发现两个诡异Bug. 下面就问题来源.问题根因.解决方式.怎样避免做具体描写叙述. .且两个表的触发器Trigger都调用这个序列.也就说,程序的频繁任务下发任务中,频繁运行后,几周或者几个月非常easy就超过65535的序号值. 综上,基本判定程序中出现越界訪问导致显示异常. 3.解决方式 1)情况着急:採取简单规避方案:更新序列Sequence当前值.当前值已经查过67000.须要回…
今天在客户服务器上遇到了oracle中文乱码问题,第一个想到的是:要想避免oracle字符乱码的问题,需要注意oracle客户端的字符编码和服务端的字符编码保持一致. 于是操作如下: 1.查看服务端字符集--结果:服务端是ZHS16GBKSELECT * FROM NLS_DATABASE_PARAMETERS where parameter='NLS_CHARACTERSET'; 2.于是开始修改客户端字符集,方式如下: 在运行里面,输入regedit进入注册表,HKEY_LOCAL_MACH…
oracle rac 10.2 的在 linux 上的存储选项 博客分类: Oracle OracleLinux项目管理配置管理  Oracle 集群需要存储的软件和数据 项目 内容 最少磁盘空间 Clusterware 软件 集群软件 500M(安装完成后不变) voting disk(表决磁盘) 记录集群节点信息 20M OCR(Oracle 集群注册) 存储集群配置信息 100M Oracle 数据库软件 数据库软件 1.3G(安装完成后不变) RAC 数据库 存储所有数据库文件 1.2G…
首先,oracle数据库的存储结构可以分为逻辑存储结构和物理存储结构,对于这两种存储结构,oracle是分别进行管理的.   逻辑存储结构:oracle内部的组织和管理数据的方式.  物理存储结构:oracle外部(操作系统)组织和管理数据的方式.接下来我们对上面的两种结构进行详细的介绍.1.逻辑存储结构: oracle在逻辑上将保存的数据划分为一个个小单元来进行存储和维护,更高一级的逻辑存储结构都是由这些基本的小单元组成的.逻辑结构类型按照尺寸从小到大分可分为:块(block)-->区(ext…
Oracle存储——逻辑结构 Oracle 数据库存储物理结构 物理存储结构是实际的数据存储单元,对应于操作系统文件. oracle数据库就是由驻留在服务器的磁盘上的这些操作系统文件组成的. 物理存储结构和逻辑存储结构之间在操作上的一个区别: 逻辑存储结构有创建.删除的操作. 物理存储结构有创建.删除.将其移动到另一个位置(包括改变其名称)的操作.这样可以实现多路复用(控制文件.重做日志文件)和将它们安排到不同磁盘位置.更换名称的功能. Oracle数据库文件: oracle数据库是作为一个单元…
一.总述 逻辑存储结构是 Oracle 数据库存储结构的核心内容,对 Oracle 数据库的所有操作都会涉及逻辑存储结构.逻辑存储结构是从逻辑的角度分析数据库的组成,是对数据存储结构在逻辑概念上的划分.Oracle 的逻辑存储结构是一中层次结构,主要由表空间.段.区间和数据块等概念组成.逻辑结构是面向用户的,当用户使用 Oracle数据库时,使用的就是逻辑存储结构.Oracle 的逻辑存储结构中所包含的多个结构对象从数据库到表空间形成了不同层次的粒度关系. Oracle 数据由多个表空间组成(数…
文章导航 bloomberg bulkfile 解析 bloomberg bulkfile 在oracle的存储 一 表名和字段名称的命名规则 1.1. 表名以文件名称直接命名,将文件名中的"."用“_"代替. 如<fundamentals_namr_af_history.out>对应表名为:FUNDAMENTALS_NAMR_AF_HISTORY_OUT 1.2. 字段中特殊字段的处理规则 去接去除字段中的"&","%&qu…
执行如下语句,查看汉字在数据库中所占的字节: select vsize('汉') from dual; 一般情况下,得到的结果大部分为值:2 或 3 一般linux下安装oracle数据库,默认字符编码设为:AL32UTF8,每个汉字占3个字节 而windows平台下,默认字符编码设为:ZHS16GBK,每个汉字占2个字节 查看oracle服务端字符编码的SQL如下: select userenv('language') from dual; 数据迁移和前端字符长度校验,尤其要注意字符编码问题!…
• 设置Automatic Storage Management (ASM)  快速镜像 再同步 • 使用ASM 首选镜像读取 • 了解可伸缩性和性能增强 • 设置ASM 磁盘组属性 • 使用SYSASM 角色 • 使用CHECK.MOUNT和DROP 命令的多种易管理的新选项 • 使用ASMCMD  的md_backup.md_restore和cp扩展 无ASM 快速镜像再同步时 无ASM 快速镜像再同步时 每当ASM 无法向分配给某个磁盘的区执行写入操作时,就会使该磁盘脱机,同时会在其 它磁…
一.数据块 Oracle对数据库数据文件中的存储空间进行管理的单位是数据块.数据块是数据库中最小的(逻辑)数据单位,是最小的I/O单位.与数据块对应的,所有数据在操作系统级的最小物理存储单位是字节.每种操作系统都有一个被称为块容量的参数.Oracle每次获取数据时,总是访问整个数据块,而不是按照操作系统块的容量访问数据.数据块容量应该设为操作系统块容量的整数倍,以便减少不必要的I/O操作,一般数据块大小为8k. 结构: 头部:(1)块的物理地址 (2)块的段信息.表空间信息 (3) 事物槽 (4…
表空间 当一个用户被创建以后,随之就要为用户分配数据存储的空间,这在oracle中成为“表空间”(Tablespace). 在数据库中创建用户时,基于应用性能和管理的考虑,最好为不同的用户创建独立的表空间. 用于存储永久数据的表空间通常被称为永久表空间,用于存储临时数据的表空间通常被称为临时表空间 逻辑上看,数据块是oracle的最小IO单元,即写入读出内存是以oracle中的块为单位的,oracle中的块通常由多个操作系统的块组成(操作系统的块应该就是该操作系统上文件系统的块,一个操作系统的块…
一.数据库的存储结构有物理结构和逻辑结构组成的 物理结构:物理上,oracle是由一些操作系统文件组成的 SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- /u01/app/oracle/oradata/orcl/system01.dbf /u01/app/oracle/oradata/orcl/undotb…
在oracle中,有一些字符函数: upper(字符串):转换为大写lower(字符串):转换为小写initcap(字符串):首字母大写replace(字符串1,字符串2,字符串3):将串1中所有的串2,替换成串3…
1.查看数据库实例基本信息: SQL> SELECT DBID,NAME,CREATED,LOG_MODE,OPEN_MODE,FORCE_LOGGING,CURRENT_SCN,FLASHBACK_ON FROM V$DATABASE; DBID NAME CREATED LOG_MODE OPEN_MODE FORCE_LOGGING CURRENT_SCN FLASHBACK_ON ---------- --------- ----------- ------------ --------…
1.存储 存储过程.存储函数:指存储在数据库中供所有用户程序调用的子程序. --创建存储过程(procedure) --用create procedure 命令建立存储过程. 格式: create or replace procedure 过程名(参数列表)   as    PLSQL子程序体; SQL> create or replace procedure hh //创建存储过程 as begin dbms_output.put_line('世界您好!'); end; / 过程已创建. SQ…
单行函数语法: 语法:funcation_name(列 | 表达式[, 参数1, 参数2]) 单行函数主要分为以下几种: 字符函数:接收数据返回具体的字符信息 数值函数:对数字进行处理,例如:四舍五入 日期函数:直接对日期进行相关的操作 转换函数:日期.字符.数字之间可以完成互相转换功能 通用函数:Oracle自己提供的有特色的的函数 字符函数: 在Oracle里面所有的验证操作必须存在完整SQL语句之中,所以如果现在只是进行功能验证,使用的是一张具体的表. SELECT UPPER('LiXi…
oracle获取字符串长度函数length()和hengthb() lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算string所占的字符长度:返回字符串的长度,单位是字符 对于单字节字符,LENGTHB和LENGTH是一样的. 如可以用length(‘string’)=lengthb(‘string’)判断字符串是否含有中文. 注: 一个汉字在Oracle数据库里占多少字节跟数据库的字符集有关,UTF8时,长度为三.…
http://heisetoufa.iteye.com/blog/366957 认识存储过程和函数 存储过程和函数也是一种PL/SQL块,是存入数据库的PL/SQL块.但存储过程和函数不同于已经介绍过的PL/SQL程序,我们通常把PL/SQL程序称为无名块,而存储过程和函数是以命名的方式存储于数据库中的.和PL/SQL程序相比,存储过程有很多优点,具体归纳如下: * 存储过程和函数以命名的数据库对象形式存储于数据库当中.存储在数据库中的优点是很明显的,因为代码不保存在本地,用户可以在任何客户机上…
oracle数据库管理系统有三个重要的概念:实例.数据库.数据库服务器.oracle数据库的存储结构可以分为逻辑存储结构和物理存储结构.逻辑存储结构用于描绘Oracle内部组织和管理数据的方式,而物理存储结构用于展示Oracle在操作系统中的物理文件组成情况. 实例:是指一组Oracle后台进程以及在服务器中分配的共享内存 数据库:是基于磁盘的数据文件.控制文件.日志文件.参数文件.和归档日志文件等组成的物理集合 数据库服务器:管理数据库的各种软件工具(sqlplus.oem)实例及数据库及数据…
练习字符处理函数(数据库表都是从1开始),我们用到一张"伪表" dual: dual 表:dual 是一张只有一个字段,一行记录的表.dual 表也称之为'伪表',因为他不存储主题数据.如果我们不需要从具体的表来取得表中数据,而是单纯地为了得到一些我们想得到的信息,并要通过 select 完成时,就要借助 dual 表来满足结构化查询语言的格式. CONCAT(arg1,arg2):连接值在一起 (CONCAT 函数有两个输入参数) arg1:字符串类型.字符拼接的值. arg2:字符…
  分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 一.控制文件(Control File):保存有关数据库的结构信息! 控制文件是一个小型的二进制文件,可以记录数据库的物理结构.包括: * 数据库名称     * 数据文件和日志文件的名称和位置     * 数据库创建的时标     * 当前日志的序号     * 检验点信息 一般Oracle数据库创建…
为兼容Oracle的数据类型,KingbaseES扩展了Oracle的NUMBER.VARCHAR2.CHAR(n)和DATE类型.该措施使得移植Oracle的Create Table等DDL语句时,无需任何修改就能直接在KingbaseES环境中运行. 虽然扩展了oracle的字符类型,但是相同数据类型之间还是有有些区别: 数据类型 KingbaseES Oracle  CHARACTER(n) CHAR(n) NCHAR(n) char表示一个字符 Byte表示一个字节 默认为1 值域:10…
为了让 PL/SQL 函数返回数据的多个行,必须通过返回一个 REF CURSOR 或一个数据集合来完成.REF CURSOR 的这种情况局限于可以从查询中选择的数据,而整个集合在可以返回前,必须进行具体化.Oracle 9i 通过引入的管道化表函数纠正了后一种情况.表函数是返回整个行的集(通常作为一个集合)的函数,可以直接从 SQL 语句中进行查询,就好像它是一个真正的数据库表一样.管道化表函数与之相似,但是它像在构建时一样返回数据,而不是一次全部返回.管道化表函数更加有效,因为数据可以尽可能…
UPPER(char) 小写转大写 LOWER(char) 大写转小写 INITCAP(char) 首字母转换 SUBSTR(char,[m[,n]]) 截取字符串函数 从源字符串char的m开始截取,截取n位 你可以省略,代表截取到末尾 m为0,表示冲字符串首字母截取.m为负数,表示冲字符串尾部截取 例子: SQL> select substr('abcde',2,3),substr('abcde',2),substr('abcde',-2,1) from dual; SUB SUBS S -…
.检查服务器编码: 执行SQL语法: Java代码 select * from v$nls_parameters; 或 Java代码 select * from nls_database_parameters 或 Java代码 select userenv('language') from dual; 查看数据库可用字符集参数设置 Java代码 SELECT * FROM v$nls_valid_values; 也可以参照/home/oracle/.bash_profile 相关语言设置. 可以…
--字符函数 --伪表dual --(1)求字符串长度 select length('123.456/-*') from dual --(2)截取函数求字符串的子串 ,) from dual --(3)字符串拼接 select concat('ABC','DE') from dual select concat(concat('ABC','DE'),'FG') from dual select 'ABC'||'DE'||'FG' from dual…
一.pl/sql developer 中文字段显示乱码 原因:因为数据库的编号格式和pl /sql developer的编码格式不统一造成的. 二.查看和修改oracle数据库字符集: select userenv('language') from dual; 查询结果: SIMPLIFIED CHINESE_CHINA.AL32UTF8 --修改oracle数据库字符集:(在SQL Plus中) 修改sqlnet.ora文件 SQLNET.AUTHENTICATION_SERVICES= (N…
一,读取图片转为String类型: 需要使用Sun公司提供的Base64工具 String str = ((Map) list1.get(0)).get("EINVOICEFILE").toString(); //通过查询取出EINVOICEFILE的属性值,EINVOICEFILE在数据库中以(1:cat.png)这种varchar类型存储(公司平台需要可忽略). String[] filemap = str.split(":"); String id = fil…