--修改有数据oracle字段类型 从number转为varchar--例:修改ta_sp_org_invoice表中RESCUE_PHONE字段类型,从number转为varchar --step1:增加一个原类型缓冲区字段alter table ta_sp_org_invoice add permile_temp number;--step2:将要修改的字段的值存入缓冲区,同时将要修改的字段制空update ta_sp_org_invoice set permile_temp=RESCUE_…
oracle 字段类型CHAR    固定长度字符串    最大长度2000    bytes              VARCHAR2    可变长度的字符串    最大长度4000    bytes      可做索引的最大长度749        NCHAR    根据字符集而定的固定长度字符串    最大长度2000    bytes              NVARCHAR2    根据字符集而定的可变长度字符串    最大长度4000    bytes             …
Oracle中2000个byte,并不是2000个字符的意思,1个字符在Oracle中可能是1个byte到4个byte不等,需看数据库字符集的设置了. 对GBK字符集而言,ASCII码中128个字符使用1个字节进行存储,其它字符使用双字节存储:对UTF8字符集而言,ASCII码中128个字符使用1个字节进行存储,其它采用两个或三个字节进行存储,四个字节存储的是极少使用字符: 数据库中有一个参数NLS_LENGTH_SEMANTICS,这个参数有两个取值CHAR和BYTE.当为CHAR时字符类型的…
Oracle 字段类型 http://www.cnblogs.com/lihan/archive/2010/01/06/1640547.html 字段类型 描述 字段长度及其缺省值 CHAR (size) 用于保存定长(size)字节的字符串数据. 每行定长(不足部分补为空格):最大长度为每行2000字节,缺省值为每行1字节.设置长度(size)前需考虑字符集为单字节或多字节. VARCHAR2 (size ) 用于保存变长的字符串数据.其中最大字节长度由(size)指定. 每行长度可变,最大长…
在SQL数据库中使用SQL语句(格式:alter table [tablename] alter column [colname] [newDataType])修改某表的字段类型时,报一下错误:由于一个或多个对象访问此列,ALTER TABLE ******** 失败.” 根据上述提示在网上搜索结果,得知发生该错误的原因在于要修改的字段存在Default约束,解决方法: 1.查找出表中该字段的约束名称(或根据已有的提示及对象'DF__******') declare @name varchar(…
[20190930]oracle raw类型转化number脚本.txt --//写一个简单oracle raw转化number脚本,简单说明:--//输入必须是c1,02 或者 c102,不支持c1,2格式.--//raw2num.sh 脚本放在最后. --//测试:$ cat otest.txt | xargs  -n 1 -I {}  bash -c "./raw2num.sh {};echo {} " | paste - -0       801       c1,022   …
背景: 前段时间在百度经验看到一篇文章<如何在电脑右下角显示你(爱人)的名字>,之前也听过这个小技巧,但没真正动手设置过.所以出于好奇就实践了一下. 设置完成后的效果例如以下.右下角的时间区域添加了我的名字 "Danny" : 以上为背景. 没想到这个小技巧给我带来了麻烦(当然也是一次学习和提高的机会). 该字符串未被识别伪有效的DateTime 正在做的新闻公布系统.数据库中存储时间的字段类型为datetime类型,而且字段值都是在server端自己主动获取的.想在cli…
将数据库中存储时间的数据类型改为varchar(),这时最好让这些时间是数据库中自动生成的(一个没有格式的输入也可能会导致输出错误),因为存储类型为varchar(),所以获取到的值也就被认为是一个字符串,直接将数据库中的时间字符串进行转化(这时那些转化函数是能识别数据库中的时间函数的),客户端的时间格式不再影响转换过程. 不过数据库中存储时间的类型如果为字符型也会带来一些麻烦: 数据库中的时间仅仅是用来显示.查找的,那么影响还不算大,但如果对时间字段进行一些算法如计算星期.DateDiff.D…
第一次使用oracle数据库,在通过Navicat premium工具修改字段类型时,发现报“ORA-01439: column to be modified must be empty to change datatype ”的错误,百度后才发现oracle修改字段类型比较麻烦. 总体修改过程可分为以下几个步骤: (1)新增一个临时字段 alter table "athletes_age" add "tmp_col" VARCHAR2(255);       //…
http://www.cnblogs.com/LDaqiang/articles/1157998.html由于需求变动,现要将一个类型NUMBER(8,2)的字段类型改为 char.大体思路如下:      将要更改类型的字段名改名以备份,然后添加一个与要更改类型的字段名同名的字段(原字段已经改名),然后更新数据,最后删除改名备份的字段. 以下操作在 Oracle 10.2.0.1.0 中通过. 1./*修改原字段名*/ALTER TABLE 表名 RENAME COLUMN 字段名 TO 字段…