`

修改字段类型的方法

 
阅读更多
写道
http://space.itpub.net/trackback.php?code=ZgjY0lQqg0e8xnWSmrhUlC4DA8kEU1UN%2BE4NnmaAyQ

 

    今天公司因为业务需要,修要修改某个字段数据类型有number(5),变为number(5,2)型,要是没有数据的话直接用以下语句即可

 

alter   table  tb_test  modify permile  number(5,2);

 

但是有数据的话 就不能用上面方法了,

 

alter table tb_test add permile_temp number(5,2)

update tb_test set  permile_temp=permile;

alter table drop column permile;

alter  table test rename column  permile_temp to permile;

 

这种方法会使列名发生变化,而且字段顺序增加 有可能发生行迁移,对应用程序会产生影响

以下方法是比较好的方法

不用使列名发生变化 也不会发生表迁移,但这个有个缺点是表要更新两次

如果数据量较大的话 产生的undo和redo更多 ,前提也是要停机做

要是不停机的话 ,也可以采用在线重定义方式来做 

以下是脚本:

 

alter table tb_test  add permile_temp number;
-- Add/modify columns
alter table  tb_test  modify PERMILE null;
update  tb_test  set permile_temp=permile,permile=null;
commit;
alter table  tb_test  modify permile number(5,2);
update  tb_test  set permile=permile_temp,permile_temp=null;
commit;
alter table  tb_test  drop column permile_temp;
alter table  tb_test  modify PERMILE not null;
select * from  tb_test ;


 

 

分享到:
评论

相关推荐

    SQLServer 2008 批量修改字段类型.sql

    SQL Server 2008 批量修改字段类型,查询出所有需要修改的字段,然后修改

    详解Oracle修改字段类型方法总结

    本文主要针对Oracle修改字段类型的方法进行详细讲解,特别是在面对不同情况时如何有效地进行操作。 首先,我们来看一个具体的例子,假设有一个名为`tb`的表,其中包含一个名为`name`的字段,其数据类型为`nchar(20)...

    脚本修改字段名、数据类型

    随着业务的发展和技术的进步,原有的数据类型可能不再满足当前的需求,这时就需要修改字段的数据类型。在SQL中,可以使用`ALTER TABLE`语句来完成这一任务。语法如下: ```sql ALTER TABLE 表名 ALTER COLUMN 字段...

    Greendao数据库升级添加String类型,

    总之,Greendao数据库升级添加非String类型字段时,需要正确处理数据库升级脚本和实体类的修改,以确保数据的一致性和兼容性。遇到问题时,仔细检查代码,查阅官方文档,或在社区中寻找类似问题的解决方案。

    SQL语句增加字段、修改字段、修改类型、修改默认值

    ### SQL语句增加字段、修改字段、修改类型、修改默认值 #### 一、增加字段(Add Column) 在数据库管理中,随着业务需求的变化,往往需要对现有的表结构进行调整,比如添加新的字段来存储更多的数据。在SQL中,...

    ArcGIS不提供修改字段名称和类型的功能的原因及解决方法

    在ArcGIS Desktop中,用户有时会遇到需要修改字段名称或调整字段显示顺序的情况。然而,直到ArcGIS 10.1版本之前,系统并不直接支持字段名称的修改,导致用户不得不通过删除旧字段并添加新字段的方式来实现这一目标...

    利用代码修改数据库字段类型

    2. SQL语句:修改字段类型主要涉及SQL的ALTER TABLE语句。例如,如果你有一个名为`users`的表,你想将`email`字段从VARCHAR(50)更改为VARCHAR(100),你可以编写如下SQL: ```sql ALTER TABLE users MODIFY email ...

    mysql批量修改(字段)列类型

    MySQL存储过程,一键批量修改一个表内的多个列(字段)类型。例如从int转换成varchar

    mysql修改字段类型.docx

    在MySQL数据库管理中,修改字段类型是常见的操作,这可能是为了优化数据存储,提高查询效率,或者满足新的业务需求。以下是对"mysql修改字段类型"这一主题的详细说明。 首先,我们来看一下基本的语法结构。`ALTER ...

    Oracle 增加修改删除字段

    修改字段通常包括改变字段的数据类型、默认值、是否允许为空等属性。语法如下: ```sql ALTER TABLE 表名 MODIFY (字段名 数据类型 [默认值] [NULL/NOT NULL]); ``` **示例**:修改`test1`表中的`name`字段,将其...

    泛微E9-字段类型修改方案

    修改字段类型涉及的主要表有`workflow_billfield`、`htmllabelindex`、`workflow_bill`、`workflow_browserurl`以及`formtable_main_*`。其中,`workflow_billfield`表是核心,包含字段ID、表单ID、数据库名称、...

    数据库字段类型修改.txt

    数据库字段类型修改.txt

    Sql Server 增加字段、修改字段、修改类型、修改默认值及失败原因

    Sql Server 增加字段、修改字段、修改类型、修改默认值及失败原因 增加字段 修改字段 修改类型 修改默认值 修改失败原因 等举例 适用新手 修改字段 修改字段失败

    修改clob blob 字段

    修改clob blob 字段 修改clob blob 字段 修改clob blob 字段

    泛微E9流程修改字段高亮显示

    ### 泛微E9流程修改字段高亮显示 #### 一、开发背景 在实际的企业管理过程中,工作流程中的表单填写与修改是一项常见的任务。为了确保数据的准确性和完整性,许多企业会采用流程管理系统来追踪和管理这些数据的...

    sharepoint 列表自定义字段类型

    - **文档记录**: 为自定义字段类型创建详细的文档,包括使用方法、配置选项和可能的限制,方便其他用户理解和使用。 - **性能影响**: 考虑到自定义字段类型可能对列表性能的影响,避免过度复杂的设计。 - **兼容性与...

    SQLServer常用字段类型

    ### SQL Server 常用字段类型详解 在数据库设计与管理中,选择合适的字段类型对于数据的存储效率、查询性能以及数据完整性至关重要。SQL Server 提供了丰富的数据类型,覆盖了从基本数值到复杂文本、图像等各类数据...

    mysql的字段类型及简单的操作命令

    * 修改表结构:使用命令 `alter table 表名称 ...` 修改表的字段类型、名称、是否允许非空等信息。 了解 MySQL 的字段类型和基本操作命令是每个数据库管理员和开发人员的必备知识。只有熟练掌握这些知识,才能更好...

    oracle中对blob字段的处理方法

    oracle中对blob字段的处理方法,包括增加,删除,修改,更新等操作。

Global site tag (gtag.js) - Google Analytics