Oracle数据库字段保留3位小数,程序读出来显示4位小数
需求
项目需求从字段2位小数,改成3位小数,这事儿好办,数据库噼里啪啦敲了一行代码,发现居然报错,原因是不能直接修改字段精度问题,然后使用了冒泡排序,搞定
--新增临时字段
alter table Real_Proj_Section add WEIGHT2 number(10,3);
--将原字段内容拷贝至新字段
UPDATE Real_Proj_Section SET WEIGHT2=WEIGHT
--删除原先字段
alter table Real_Proj_Section drop column WEIGHT
--新增原先字段
alter table Real_Proj_Section add WEIGHT number(10,3);
--给原先字段加备注
comment on column Real_Proj_Section.Weight is '分段重量'
--将临时字段内容拷贝至原先字段
UPDATE Real_Proj_Section SET WEIGHT=WEIGHT2
--删除临时字段
alter table Real_Proj_Section drop column WEIGHT2
遇到问题
可以是到前台显示就出现问题了,数据库中明明保留的是3位小数,前台显示的时候,会显示4位小数,后面多一个“0”
数据库字段,显示也是3位小数
问题思考与解决
刚开始以为程序的问题,调试过程中,发现返回DataTable中,这个值就多个“0”,感觉应该是精度丢失问题,然后百度查,发现之前有人也碰到过此问题,一直没人解决(也没人回答,帖子没结),能试过的方法都试过了,后来没辙了,都打算放弃治疗了。晚上睡上一觉,第二天醒来后,脑海中冒出一个新想法,将字段转字符串试试看呗,死马当活马医,后台sql改为,前面加个TO_CHAR
SELECT TO_CHAR(WEIGHT) WEIGHT FROM Real_Proj_Section WHERE SPS_ID= 272262
搞定~
人生还是得经得起折腾,O(∩_∩)O哈哈~
Oracle数据库字段保留3位小数,程序读出来显示4位小数的更多相关文章
- Oracle数据库字段类型说明
目前Oracle 数据库大概有26个字段类型,大体分为六类,分别是字符串类型.数字数据类型.日期时间数据类型.大型对象(LOB)数据类型.RAW和LONG RAW数据类型.ROWID和UROWID数据 ...
- Oracle 数据库字段类型使用说明
简介 目前Oracle 数据库大概有26个字段类型,大体分为六类,分别是字符串类型.数字数据类型.日期时间数据类型.大型对象(LOB)数据类型.RAW和LONG RAW数据类型.ROWID和UROWI ...
- oracle 数据库字段名与实体类字段名称不匹配的处理方法
之前公司一直都使用sql server 即使数据库字段名称与实体类名称不相同 可以使用诸如: select id as userId from tb_user 这种写法,可换到了oracle 之后坑爹 ...
- java连接Oracle数据库实现增删改查并在Navicat中显示
创建TEST表 eclipse中的java项目 代码 数据库方法类 DBUtil: package util; import java.sql.Connection; import java.sql. ...
- Oracle数据库字段数据拆分成多行(REGEXP_SUBSTR函数)
做多选功能时为了简便,会在某个字段中存储多个值,保存时虽然省事,但后续的查询统计时还需要拆分数据才行,因此这时需要将字段内的值分成多行以便后续使用. 下面这个例子实现了字段内数据的拆分: --创建测试 ...
- 修改oracle数据库字段类型,处理ORA-01439错误
修改表PTLOG的列TYPE的char(1)为varchar(2)类型? 在PTLOG 表新增一列 TYPE_2:ALTER TABLE PTLOG ADD TYPE_2 VARCHAR2(2) de ...
- java对象属性为date oracle数据库字段为Timestamp 处理方式
解决方案 SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); java.util.Date da ...
- 搜索表字段包含某字符串的SQL和监控Oracle数据库的SQL。
1.第一个SQL 背景:需要找到SQL Server数据库中,包含某个字符串的表,输出表和包含该字符串的列. )='=' --这里填要搜索的字符串 DECLARE @sql NVARCHAR(MAX) ...
- ArcGIS 10.2 链接64位Oracle数据库
https://my.oschina.net/zctzl/blog/909541 来自:https://blog.csdn.net/LoveCarpenter/article/details/5954 ...
随机推荐
- C++中的各种进制转换函数汇总
C++中的各种进制转换函数汇总 1.在C中,按指定进制格式输出如下: #include <iostream> #include <cstdio> using namespace ...
- NKOJ 【NOIP2015 Day2】运输计划
时间限制 : 20000 MS 空间限制 : 262144 KB 评测说明 : 2s,256m 问题描述 公元 2044 年,人类进入了宇宙纪元. L 国有 n 个星球,还有 n−1 条双向航道, ...
- Bitmap之位图采样和内存计算详解
原文首发于微信公众号:躬行之(jzman-blog) Android 开发中经常考虑的一个问题就是 OOM(Out Of Memory),也就是内存溢出,一方面大量加载图片时有可能出现 OOM, 通过 ...
- (C++ Error: Incompatible types in assignment of ‘char*’ to ‘char [2])
in C++, cannot assign a pointer to an array. c++中char*与char[]不是一种类型,但是在C里面可以,所以尽量使用C++中的类,如string, v ...
- postman 参数传递
pm.test("Status code is 200", function () { pm.response.to.have.status(200); }); pm.test(& ...
- python--Django(三)视图
Django的视图 不同于其他语言的MVC模式,Django采用的是MVT模式,即Model.View.Template,这里的View其实质就是其他语言中的Controller(emmm.....) ...
- WEB页面实现方法
页面分类 :添加页.修改页.列表页.详情页.功能页.删除 一.添加 1) 准备tpl.action(添加页.添加页保存公用一个action),并确认是否登录才显示2) 书写添加页action代码,例如 ...
- Hadoop在Ubuntu的安装和使用
由于小编在本学期有一门课程需要学习hadoop,需要在ubuntu的linux系统下搭建Hadoop环境,在这个过程中遇到一些问题,写下这篇博客来记录这个过程,并把分享给大家. Hadoop的安装方式 ...
- C# 发布时出现:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: SQL ...
- java消除 list重复值及交集,并集,差集
消除 list重复值 Java代码 public void removeDuplicate(List list) { HashSet h = new HashSet(list); list.clea ...