Mark Rotteveel a écrit :
On 2019-12-16 15:42, Norbert Saint Georges wrote:
Mark Rotteveel a écrit :
I can't answer that without information what the problem is.

Mark

okay :-)


I was actually referring to what you meant with:

"""
t = kb
t1 = ok
"""

Especially regarding the 'kb', I had no clue what you meant, but I guess it was an overflow error.

sorry, i made a mistake, it was "k"nocked "o"ut.


I am developing an application to import Oracle DBs to Firebird 4.

when for example, a table is declared like this:

CREATE TABLE part (
     part_id NUMBER GENERATED BY DEFAULT AS IDENTITY,
     part_name VARCHAR2 (255) NOT NULL,
     buy_price NUMBER (9.2) CONSTRAINT check_pos_buy_price CHECK (buy_price> 0),
     PRIMARY KEY (part_id)
);

part_id is a number that has the value:203974809258041991228294191469794647457

what should i use in firebird 4 to import part_id?

See my other post: that value is too big to fit in a NUMERIC(38) and there is no other numeric type in Firebird that would allow you to keep the number with all precision. So you would have to use a CHAR or VARCHAR (or maybe a BINARY (CHAR CHARACTER SET OCTETS) and encode the number in binary format if you're looking to save space).

BTW: Such an extremely high part-number seems rather odd, and could indicate those numbers encode additional information, which may indicate this should be a string anyway.

Mark
ok, I'm going on a varbinary (16) and would do a UDR for the indentity

--
Norbert Saint Georges
http://tetrasys.fi



Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to