ho una tabella con il seguente schemaPostgreSQL: come risolvere "numerico troppo pieno campo" problema
COLUMN_NAME, ORDINAL_POSITION,...., NUMERIC_PRECISION_INTEGER
"year";1;"";"YES";"numeric";;;17;10;17 "month_num";2;"";"YES";"numeric";;;17;10;17 "month_name";3;"";"YES";"text";;1073741824;;;
"week_of_month";4;"";"YES";"numeric";;;17;10;17
"count_of_contracts";5;"";"YES";"bigint";;;64;2;0
ma quando inserisco il seguente in esso
insert into contract_fact values(2011, 8, 'Aug', 1, 367)
vedo il seguente errore
ERROR: numeric field overflow
SQL state: 22003
Detail: A field with precision 17, scale 17 must round to an absolute value less than 1.
Questo non è uno schema ma un dump di una tabella interna postgres. Se potessi avere la cortesia di produrre qualcosa di leggibile, come l'output di \ d o l'istruzione CREATE TABLE che è stata utilizzata per creare questa tabella (pgAdmin3 può aiutarti con questo)? Inoltre, un campo dichiarato numerico (X, Y) può utilizzare fino a X posti, con decimali Y direttamente alla virgola. Ciò significa che se X = Y è possibile memorizzare solo valori <1. –
Inoltre, si prega di includere l'elenco di colonne nei propri INSERT, a seconda di un particolare ordine di colonne è una cattiva idea. –