Force View Number Data Type Precision?

Aug 18, 2011

I am working on an application that pulls data from an Oracle view into Microsoft Excel (Oracle 11g, MS Excel 2003). It is an automated pivot table created through vba. The problem I'm having is that the decimal points from number columns are being truncated - they don't make it to the pivot table.

When I use the pivot table wizard and set the external data source using a SQL string (select * from view), the precision is not lost. When I create the pivot table automatically in vba, the precision is lost. The pivot table settings, regardless of how the data is brought in, shows the format of the number column as general. This tells me that Excel is trying to figure out what the data type is, and can't (not smart enough).

When looking at the description of the view, the data type is NUMBER (no precision). The table that it is pulling from has the precision set (NUMBER(11,3)). I have tried using the following, but it doesn't work:

select to_number(field_name, '99999999.999') field_name from view

View 7 Replies


ADVERTISEMENT

SQL & PL/SQL :: Does Force View Option Works In Oracle 11g

Aug 13, 2010

when i am trying to excute below query.. it says ORA-00942: table or view does not exist.

create or replace force view v2 as select * from employee;

View 11 Replies View Related

SQL & PL/SQL :: How To Specify Precision And Scale For NUMBER Parameter In Procedure

Nov 7, 2012

I have a procedure. Here is the spec

Procedure countyname(i_lat IN Number, i_lon IN NUMBER, o_countyname OUT VARCHAR2);

The procedure works fine when the input parameter values are small precision like 30.653, -618.765 etc.it fails if the Input parameter values have more precise like 35.694872140886...I think the IN Number can only take upto certain precission.

Is there any way I can specify the precision for a NUMBER input parameter in a procedure?

ex: Procedure countyname(i_lat IN Number(30,10), i_lon IN NUMBER(30,10), o_countyname OUT VARCHAR2);

when I tried the above statement it doesn't compile it gives PLS-00103 error.

View 11 Replies View Related

SQL & PL/SQL :: Numeric Or Value Error - Number Precision Too Large?

Sep 4, 2012

What is the first term in the Fibonacci sequence to contain 1000 digits?
DECLARE
f_num INTEGER;
n_num INTEGER;
h_num INTEGER;

[code]...

why I am getting this error?? Is there any problem in my code??

View -1 Replies View Related

SQL & PL/SQL :: Truncate Precision In Number Datatype Oracle?

Jul 19, 2012

We have truncated number based on the decimal value. i tried to truncate number based on the precision using cast function. i got an error "value larger than specified precision allowed for this colum".

create table TEST_NUMBER
(id number(4,1));
insert into TEST_NUMBER
values(1234.789888888888);

[code]...

ORA-01438: value larger than specified precision allowed for this column
01438. 00000 - "value larger than specified precision allowed for this column"
*Cause: When inserting or updating records, a numeric value was entered that exceeded the precision defined for the column.
*Action: Enter a value that complies with the numeric column's precision, or use the MODIFY option with the ALTER TABLE command to expand the precision.

i want result like 1.8

View 3 Replies View Related

(number Precision Too Large) Using POWER (n / M) Function?

Feb 14, 2012

POWER(47.3616, 27.1261) returns: 2.80403309600359E45 which causes "number precision too large" error in my variable which is defined as NUMBER(20,20).

I've tried ROUNDing and TRUNCing the product, but still get the same long output. The only thing that seems to work is SUBSTR.

Is that the ONLY way to deal with this? It seems like there would be a better way or is there another type I should use these super long decimal results?

SQL> SELECT POWER(47.3616, 27.1261) AS Exp_Val
2 FROM dual;
EXP_VAL
----------
2.8040E+45
SQL>

[code].....

View 2 Replies View Related

SQL & PL/SQL :: ORA-06502 / Numeric Or Value Error - Number Precision Too Large

Dec 7, 2012

How many types of pl/sql value or numeric errors are there and when occurs.Like as follows

1.ORA-06502: PL/SQL: numeric or value error: character string buffer too small

2.ORA-06502: PL/SQL: numeric or value error: number precision too large

View 8 Replies View Related

Forms :: How To Force User To Enter Exactly 3 Digits Into Number Field

Mar 28, 2011

There is a text item on my form with NUMBER data type. I want to force the user to enter exactly 3 digits in to that text item. My current FORMAT MASK is set to 990. But this allows user to enter even a single digit where as my requirement is user should enter exactly 3 digits. Can we achieve this by changing the FORMAT MASK property?

View 6 Replies View Related

Client Tools :: Number Data Type Column Does Not Display As Entered?

Jun 28, 2010

Now i have a problem which i am facing for the first time. The problem is:

I have created a table test1 with two column of number data type and the column witdth is 25. Then enter the data but when i select the recrod it does not display the column data as it was entered.
SQL> create table test1
2 (
3 startno number(25),
4 endno number(25)
5 );

Table created.

SQL> insert into test1

[code]...

View 5 Replies View Related

Server Administration :: Functions To Convert The Long Type Field Data To Varchar2 Type

Oct 17, 2011

Is there some functions to convert the long type field data to varchar2 type?

View 2 Replies View Related

SQL & PL/SQL :: View To Find DB Link Type

Feb 21, 2012

Is there any view to find out the Types (Public or Private) of the DB LINK already created?

View 6 Replies View Related

SQL & PL/SQL :: TYPE NUM_ARRAY As Table Of Number?

Dec 5, 2012

exactly what permissions I need to execute the following SQL statement.

SQL> CREATE OR REPLACE TYPE NUM_ARRAY as table of number;
2 /
CREATE OR REPLACE TYPE NUM_ARRAY as table of number;
*
ERROR at line 1:
ORA-01031: insufficient privileges

When I grant DBA to the ID which runs the SQL it works fine.

View 2 Replies View Related

PL/SQL :: Forming Number Type List In A Cursor?

Jul 12, 2013

we use oracle 11g. 11.2. I have a situation where in a pl-sql package, there is a modification needs to be done . Every User is associated with destination codes. For eg, user1==>0101,0104  There is a  destination_number and country field in the table1.Each of the destination number is associated with a country code and this combination is unique. for eg: 

dest_code   country_code 0101 CHINA 0202 UK 0101 Mexico 0104   Mexico 

For example, if user1 logs in to the system, then pl sql logic will look if that dest_code is in a table1,If the dest_code is present in the table1, then that dest_code number wont be added to the dest_code list formed for that user. For example,if user1 got dest_codes  0101,0104  associated with him.IF 0101 is in exception table then 0101 and 0104wont be used to form dest_code list. If NOT, a dest_code list will formed like 0101||0104. I am able to form the logic like I have a cursor that loops for each dest_code.For each dest_code , it will get that dest_code  into v_dest_code_no number type variable. open cursor fetch dest_code  no into v_dest_code  v_dummy number:=0;v_dest_code_list number:=0; LOOP v_dest_code_list:=v_dest_code ||v_dest_code ;  v_dest_code :=0; END LOOP:  How to make sure that for each dest_code set, if one of them is in table1, then the next number also will not be added to the list.

View 1 Replies View Related

PL/SQL :: PLS-00306 - Wrong Number Or Type Of Argument In Call To MULTISET_UNION_ALL

Sep 7, 2012

I'm trying to use MULTISET UNION to append several collections into a single recordset.The select queries shown for the CURSOR are simple beta versions of the real queries which have about 350 fields to each of them. I will be appending data from 15 of these queries which each will with no more than 20 records per query into a new single recordset (not sure if 'recordset' is the correct phrase or term for what I mean, it could be ARRAY, OBJECT, COLLECTION or something else all together).

Here is text of the ERROR message:

ORA-06550: line 63, column 1:
PLS-00306: wrong number or type of argument in call to 'MULTISET_UNION_ALL'

ORA-06550: line 62, column 1:
PL/SQL: Statement ignored

ORA-06550: line 71, column 36:
PLS-00487: Invalid reference to variable 'VARCHAR2'

ORA-06550: line 71, column 5:
PL/SQL: Statement ignored

I think the error has to do with some defect in my declare statements.

DECLARE
  MyTID varchar2(10);

  CURSOR Cursor_rst1 IS
      SELECT d_owner_internal_id,
             d_internal_id,
             d_tid,
             d_entity_name,
             d_form_seq
        FROM rtns.itas_rtn_ct_1120_cor tblRecords
       WHERE d_form_seq = '2710' --Tax Year =2003
         AND D_TID = MyTID;
[code]....

View 3 Replies View Related

View With Variable Number Of Columns

Oct 21, 2011

I've created a stored procedure which creates itself a view (a MV to be honest); the instructions to create this m.view are dinamically built insinde my procedure, so each time i run it, based on the different input parameters, i've got a different result (my output m.view can have three colums the first time, or ten the next time) how can I read my output view to put the data into file? I've tried with "select * bulk collect into my_array from my_ output_ view"...after declaring "my_array" as a varying array with the max number of colums I could ever have...but nothing: if the array dimension doesn't match the number of columns that i've on my view, i.e. i receive "ora-00947 not enough values" error.

Is there a method to dimension dinamucally the array to store my data? Or should I change the code to fetch some other way the data i need to put to a file?

View 2 Replies View Related

SQL & PL/SQL :: How To Find Number Of Rows Of View

Oct 22, 2010

is there a way to find out how many rows a View has? Something similar to NUM_ROWS with regular tables perhaps? Or do I have to use Count(*)?

View 4 Replies View Related

SQL & PL/SQL :: How To Describe Number Length In VIEW

Sep 30, 2011

in the case below, when i created VIEW to add a new Department for some reason, its length is un-identified but i want the length as describe in table, how i can get ?

Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - Production With the Partitioning, OLAP and Data Mining options

devtest@ Test.DB> desc dept
Name Null? Type
----------------------------------------------------------------- -------- ------------
DEPTNO NUMBER(2)
DNAME VARCHAR2(14)
LOC VARCHAR2(13)

devtest@ Test.DB> l
1 select deptno, dname, loc from dept
2 union all
3 select 99 deptno, 'MY DEPTT' dname, 'MY LOCATION' LOC
4* from dual
devtest@ Test.DB> create view my_dept as
2 select deptno, dname, loc from dept
3 union all
4 select 99 deptno, 'MY DEPTT' dname, 'MY LOCATION' LOC
5 from dual;
[code]....

View 4 Replies View Related

PL/SQL :: How To View The Number Of Locks Defined For A Database

Aug 21, 2012

How to view the number of locks defined for a database? I am using Oracle 10g.

How to calculate the number of locks for a given sql select statement?

say for example,

select a.eno,b.ename,c.salary,d.dob,e.address
from a,b,c,d,e
where...
...
..

Assume all of them are row level locking.

I want to calculate the number of locks . How many locks will be held while running the above query?

View 16 Replies View Related

Store Data In CLOD Data Type - How To Create A Unique Index

May 20, 2013

We have been recommended to store data in CLOD data type.

Sample data: 1:2:2000000:20000:4455:000099:444:099999:....etc it will grow to a large number.

We want to create a Unique index, for functional reason. Is it advised to create a unique index on a CLOB datatype?

View 2 Replies View Related

SQL & PL/SQL :: Extracting Data From LONG RAW Data Type Column

Oct 7, 2011

I have come one requirement where i need to extract data from a LONG RAW data type column.

View 7 Replies View Related

Creating A View To Show Employee Names / Age And Total Number Of Projects Assigned

Apr 14, 2009

I have following tables:

EMPLOYEE (E-Number, Name, Department, age)
ASSIGNMENT (E-Number, P-Number )
PROJECT( P-Number, Project, Manager)

Create a view to show employee names, age and total number of projects they are assigned to

View 2 Replies View Related

Error Due To Precision Value - ORA-06502

Aug 23, 2012

I got the error "ORA-06502: PL/SQL: numeric or value error: number precision too large" while assigning a value to variable.

For example var Number(5,3);
var:=225.345

Here it should give this error since the no.of digits before decimal should not be more than 2.

In of the procedure, I am getting this error.

Is there any way can we check this violation before assigning this values to a variable?

For example, if the value is too large, we can give a default value etc before assigning it.

Environment: UNIX AIX - 5.3, Oracle 11.2.0.1

View 3 Replies View Related

SQL & PL/SQL :: Precision Greater Than Actual Value

Apr 6, 2012

When we are trying to create number data type column of a table with precision greater than actual value,it's accepting the definition of the table . But we are unable to insert any values into the table.how internally it stores the value

SQL> drop table precision_test;
Table dropped
SQL> create table precision_test(name number(2,5));
Table created
SQL> insert into precision_test values (1);
insert into precision_test values (1)
[code]....

View 5 Replies View Related

PL/SQL :: Compare 2 Numbers With Different Precision

Jan 30, 2013

Using DB 10.2.0.5, I've encountered a strange behavior today while trying to compare ORA_ROWSCN with a previous SCN stored in a column.

SELECT
h.id HID,
h.ora_rowscn HSCN,
o.id OID,
o.scn OSCN,
[code]......

1157 rows While casting o.scn to a number gives me another resultset (this one is correct):

SELECT
h.id HID,
h.ora_rowscn HSCN,
o.id OID,
o.scn OSCN,
h.ora_rowscn-o.scn DIFF
[code]......     

2114 rows I got the same result if I use NVL(o.scn,0) rather than TO_NUMBER(o.scn). I can't find out why this happens. Obviously, the ">" condition doesn't match when the difference is too small.

AFAIK, ora_rowscn is a NUMBER while my "scn" column is a NUMBER(12) (which should be sufficient to store my DB or remote DB's SCN).

View 9 Replies View Related

Numeric Precision Specifier Is Out Of Range (1 To 38)

Mar 10, 2004

I am trying to run copy command to copy data from one database to other.I 'm getting this error while running copy command. "ORA-01727: numeric precision specifier is out of range (1 to 38)"

View 1 Replies View Related

SQL & PL/SQL :: ORA-01438 - Value Larger Than Specified Precision Allows For Column

Oct 11, 2011

I have a table T1.In that table i have a column id, i gave a number datatype for id as number(2,2). when i try to insert the value im getting an error.

SQL> desc t1;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER(2,2)
NAME VARCHAR2(10)
NAME1 NUMBER

SQL> insert into t1(id) values(2);
insert into t1(id) values(2)
*
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column

SQL> insert into t1(id) values(2.5);
insert into t1(id) values(2.5)
*
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column

SQL> insert into t1(id) values(10.15);
insert into t1(id) values(10.15)
*
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column

SQL> insert into t1(id) values(10.5);
insert into t1(id) values(10.5)
*
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column

View 4 Replies View Related

SQL & PL/SQL :: Value Larger Than Specified Precision Allowed For Column

Mar 21, 2013

I am trying to do bulk insert into a table. Attached is the script I am running:

But when I run this script I get exception : 'ORA-01438: value larger than specified precision allowed for this column'.

I have checked in my soucre table as well as in inserting table, everything looks fine to me.

how to handle such exception, which could actually tell me for what column and what data it is throwing exception.

View 7 Replies View Related

Performance Tuning :: Force Subquery To Use Index?

Aug 5, 2010

I have the following query:

Select
tag0.TAG_VALUE pid, tag1.TAG_VALUE, tag2.TAG_VALUE From TAGGER.TAGGABLE_RESOURCE r
, TAGGER.TAG tag0
, TAGGER.TAG tag1
, TAGGER.TAG tag2
where 1=1

[code]....

This runs in about 400ms. Now I replace this:

ANDtag0.TAG_TYPE in (4602, 5228)
ANDtag1.TAG_TYPE in (4612, 5225)
ANDtag2.TAG_TYPE in (4613, 5226)

with this:

ANDtag0.TAG_TYPE in (select COLUMN_VALUE from ( select * from table( TAGGER.GET_IDS_OF_SIMILAR_TAG_TYPES('Patient ID') ) x1 ))
ANDtag1.TAG_TYPE in (select COLUMN_VALUE from ( select * from table( TAGGER.GET_IDS_OF_SIMILAR_TAG_TYPES('Patients Sex') )x2 ))
ANDtag2.TAG_TYPE in (select COLUMN_VALUE from ( select * from table( TAGGER.GET_IDS_OF_SIMILAR_TAG_TYPES('Patients Birth Date') ) x3 ))

So instead of hard coding the IDs there is a function that looks them up. The function itself is reporting that it runs in 0ms. But when I run the new query:

Select
tag0.TAG_VALUE pid, tag1.TAG_VALUE, tag2.TAG_VALUE From TAGGER.TAGGABLE_RESOURCE r
, TAGGER.TAG tag0
, TAGGER.TAG tag1
, TAGGER.TAG tag2
where 1=1

[code]....

it takes around 6s to run. I have looked at the explain plans it it seems as though the function based approach is triggering a full table scan of 'TAG'.

I have tried it with query hints to use index, but it doesn't change the execution plan, or the query time.

The explain plan for the quick query is:

PLAN_TABLE_OUTPUT
---------------------------------------------------------------------------------------------------
Plan hash value: 1031492929
---------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |

[code]....

And the slow one is:

PLAN_TABLE_OUTPUT
----------------------------------------------------------------------------------------------------
Plan hash value: 2741657371
----------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |Te
----------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 20M| 1602M|

[code]....

View 5 Replies View Related

Getting Error - ORA-01438 (value Larger Than Specified Precision Allowed For Column)?

Dec 31, 2012

SQL> create table t51(t5 NUMBER(25,8));

Table created.

SQL> insert into t51 values (100000000000000000.00000);
insert into t51 values (100000000000000000.00000)
*
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column

View 5 Replies View Related

Force Query To Always Bring Back Certain Amount Of Rows

Jun 24, 2010

Is there a way to force a query to ALWAYS bring back a certain amount of rows, even if some of the rows are blank?

I know there's a way in MSSQL but not sure how to in SQL+

View 7 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved