有一个表名为tb,字段段名为name,数据类型nchar(20)。
1、假设字段数据为空,则不管改为什么字段类型,可以直接执行:
alter table tb modify (name nvarchar2(20));
2、假设字段有数据,则改为nvarchar2(20)可以直接执行:
alter table tb modify (name nvarchar2(20));
3、假设字段有数据,则改为varchar2(40)执行时会弹出:“ORA-01439:要更改数据类型,则要修改的列必须为空”,这时要用下面方法来解决这个问题:
/*修改原字段名name为name_tmp*/
alter table tb rename column name to name_tmp;
/*增加一个和原字段名同名的字段name*/
alter table tb add name varchar2(40);
/*将原字段name_tmp数据更新到增加的字段name*/
update tb set name=trim(name_tmp);
/*更新完,删除原字段name_tmp*/
alter table tb drop column name_tmp;
总结:
1、当字段没有数据或者要修改的新类型和原类型兼容时,可以直接modify修改。
2、当字段有数据并用要修改的新类型和原类型不兼容时,要间接新建字段来转移。
- 浏览: 228209 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (241)
- js (49)
- java (38)
- javamail (2)
- svn (2)
- eclipse (6)
- java jxl (1)
- tomcat (5)
- oracle (44)
- jquery (4)
- sqlserver (2)
- cookie (1)
- imp/exp (3)
- rman (3)
- oracle备份 (5)
- solr (9)
- Lucene (2)
- sqlserver2005 (2)
- jdbc (1)
- Ice (15)
- jdk1.7 (1)
- tomcat7 (1)
- java设置环境变量 (1)
- Spring (1)
- dos (1)
- mysql (1)
- ps (1)
- 谷歌浏览器打开微信网页 (1)
- css (1)
- des (2)
- linux (2)
- dbf (1)
- jar包下载(jar、doc、source) (1)
- debug (1)
- kscenter (0)
- mt (1)
- neea (0)
- t.cn (1)
- 短链接 (1)
- rh-java把老表新建并导入到新表中 (1)
- oracle数据迁移ETL工具 (3)
- kettle (5)
- DNS (1)
- HttpClient (4)
- nginx (5)
- redis (8)
- jedis (2)
- nodejs (8)
- exception (1)
- AES (1)
- gzip (1)
- resin (1)
- 图像 (1)
- 安全评估 (1)
- word (1)
- MongoDB (0)
最新评论
发表评论
-
客户端PLSQL Developer连接远程数据库Oracle
2018-04-03 14:46 542客户端PLSQL Developer连接远程数据库Orac ... -
EXECUTE IMMEDIATE及Using (精辟啊) -- 可执行多条sql语句
2017-07-19 10:48 1416当我们碰到有一类存储名称和过程的参数上都相似时,可以使用e ... -
oracle通过正则验证香港、澳门、台湾的身份证和护照
2016-10-26 18:17 2109台湾的:1个英文+9个数字 [A-Z][0-9]{9} ... -
Oracle 多表关联并且批量修改
2016-10-22 15:29 1238描述:A表有 id,or_id 字段,B表有 id,cod ... -
oracle 多条查询记录 结果连接成以逗号分割字符串
2016-10-20 16:34 2065--查询 select wmsys.wm_concat( ... -
Oracle中cannot drop a user that is currently connected
2016-06-23 15:25 888Cannot drop a user that is cur ... -
drop table cascade
2016-05-16 17:22 843建立数据库表之前,第一步,进行了drop table cas ... -
如何在Oracle中复制表结构和表数据 【转载】
2016-05-16 17:11 5931. 复制表结构及其数据: create tabl ... -
笔记:Oracle查询重复数据并删除,只保留一条记录
2016-05-03 15:51 928转载自:http://www.uncletoo.com/ht ... -
查询oracle中所有用户信息
2016-04-08 16:19 6361.查看所有用户:select * from dba_use ... -
ORACLE语句怎么删除外键约束,和建立外键约束
2016-03-25 11:08 1152假如有主表 test_main 与 子表 test_su ... -
java 并发插入数据到oracle
2016-01-21 15:33 1297各位技术大牛,请教java 多线程问题由于项目需要,需要从 ... -
oracle表空间总大小 剩余大小
2016-01-21 09:35 729统计增加表空见两种方式的数据文件大小总值,也就是统计表 ... -
oracle分类查询并按照分类查询出各分类下固定条数的数据
2015-12-27 12:42 969一张信息表,结构:id,名称,类型,发布时间。 按照类型查 ... -
如何查看oracle的编码格式
2015-12-09 18:33 898服务器端字符集编码么? 有权限的用户可以通过 select * ... -
oracle查询默认dump路径
2015-12-08 16:12 2634--查询默认dump路径select * from dba_d ... -
oracle清空多张表数据
2015-12-08 14:11 1600清空表数据 begin for i in (sel ... -
查询oracle表的信息(表,字段,约束,索引)
2015-11-24 18:43 969通过搜索摸索,总结了一下oracle中查询表的信息,包括表名 ... -
oracle根据表名查询所有字段及类型
2015-11-17 19:39 563select * from col where tname=' ... -
如何在oracle里某个表中查询是否有按某个字段创建的索引?
2015-11-17 19:37 1092select * from user_ind_col ...
相关推荐
本篇文章主要介绍了Oracle修改字段类型方法总结,小编觉得不错,非常具有实用价值,有兴趣的可以了解一下。
修改字段类型或者长度: alter table 表名 modify 字段名 字段类型 (字段长度) 例: alter table table_name modify column_name varchar (10); 此为标准SQL,对任何数据库都适用 修改字段名: alter table ...
8. ORACLE的数据类型 9. Oracle数据库碎片整理 10.ORACLE性能调整1 11.ORACLE性能调整2 12.Oracle专家调优秘密 13.PL_SQL单行函数和组函数详解 14.PL-SQL 15.PLSQL异常处理初步 16.SQL语句性能调整...
(1) 了解Oracle的工作环境和基本使用方法。 (2) 练习标准SQL的数据操作,查询命令及其查询优化。 (3) 学会使用高级SQL命令,排序、分组、自连接查询等。 (4) 学会使用SQL*PLUS命令显示报表,存储到文件等。 【实验...
设计目的 使用VC,C++,C#等作为前台开发工具,使用Oracle作为后台数据库,所设计的管理 系统应包含输入输出、查询、插入、修改、删除等基本功能。根据题目的基本需求,设 计系统界面、数据库、编写程序(Oracle),并...
下面总结出MySQL转换Oracle的几点注意事项,希望对大家有所帮助。 1.自动增长的数据类型处理 MySQL有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据值。Oracle没有自动增长的数据类型,需要建立一...
作者通过总结各自多年的软件开发和教学培训经验,与大家分享了掌握Oracle SQL所独有的丰富功能的技巧所在,内容涵盖SQL执行、联结、集合、分析函数、子句、事务处理等多个方面。读者可以学习到以下几个方面的技巧:...
d) change 原始的字段名 新的字段名 字段名 类型[大小] 属性,modify 字段名 类型[大小] 属性⋯⋯ [after|first 字段] e) rename 新的表名 (方法二:rename table 旧的表名 to 新的表名) f) engine=存储引擎(type不...
修改一个字段的类型 alter table student modify(Name varchar2(10)); 修改一个字段的名称 alter table student rename column Name to Name2; 删除一个字段 alter table student drop column Salary; 修改...
当然最 佳的方法是修改其外键约束的更新策略,但考虑到复杂性,这里使用不标准的做法, 但建议大家实际运用中不要这么做)。在顾客- 存款账号表插入一条记录,表明顾客开设了一个新的账户。 6. 将一条刚才新开账户号...
总结 37 问与答 38 校练场 38 练习 39 第三天表达式条件语句与运算 40 第四天函数对数据的进一步处理 60 目标 60 汇总函数 60 COUNT61 SUM 61 AVG 63 MAX 63 MIN 64 VARIANCE65 STDDEV66 日期/时间函数66 ADD_...
16.3.1 Oracle触发器类型 16.3.2 触发器的创建 16.3.3 创建系统触发器 16.3.4 触发器的触发次序和触发谓词的使用 16.3.5 Oracle触发器的管理 第17章 SQL中游标的使用 17.1 SQL游标的基本概念 ...
1.6. DB2实现类型ORACLE的一些功能 29 1.7. 字符数据类型转换的时候需要注意的问题(原) 30 1.8. 本地谓词的使用注意(原) 31 1.9. windows/Linux或Unix下查看DB2端口号 31 1.10. 尽量让fetch first n row only或者...
16.3.1 oracle触发器类型 340 16.3.2 触发器的创建 341 16.3.3 创建系统触发器 342 16.3.4 触发器的触发次序和触发谓词的使用 343 16.3.5 oracle触发器的管理 346 第17章 sql中游标的使用 349 17.1 sql游标的...
1、测试流程管理、测试度量方法 按照尽早进行测试的原则,测试人员应该在需求阶段就介入,并贯穿软件开发的全过程。就测试过程本身而言,应该包含以s下几个阶段。 -测试需求的分析和确定。 -测试计划。 -...
<jp:mondrianQuery dataSource="" id="query01" jdbcDriver="oracle.jdbc.driver.OracleDriver" jdbcUrl="jdbc:oracle:thin:ngykt/ngyktadmin@172.16.46.241:1521:orcl10" catalogUri="/WEB-INF/queries/feeSchema....
卷序列号码为 00000030 4489:...│ 导入文本文件时如何指定字段类型.sql │ 导出northwind中Employees的图像.sql │ 将某个目录上的Excel表,导入到数据库中.sql │ 数据导入导出基本方法.sql │ 用ASP上传&下载文件.sql
如这次执行的结果集是多少列、每列的字段名、列的类型等,然后根据类型可以动态分配内存,然后在用这些内存去绑定,最后能过SQLFetch()来得到结果集。在CMYODBC这个类里是通过CODBCSet类应用上面的原理来实现自动...