AW: AW: AW: [HACKERS] Truncation of char, varchar types
Thank you. Is an "exception condition" necessarily an error, or is a warning also an exception condition ? A warning/notice is called a "completion condition". Because other db's only raise a warning. Of course we don't want to copy that behavior if they are not conformant. See above question. Someone said Oracle raises an error. Yes, I am very sorry. Informix seems to be the only other db that truncates silently. Raises a warning instead of error. Would need to check Sybase and DB2, but ... I think Oracle wins here... Yes, good. Do we want this in 7.1.0 ? Seems, yes :-( Andreas ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])
Re: AW: AW: AW: [HACKERS] Truncation of char, varchar types
Zeugswetter Andreas SB writes: Yes, good. Do we want this in 7.1.0 ? Seems, yes :-( No way. I'm just giving some food for thought while development is slow. In any case there seems to be support for the proposed feature. I'm just waiting for someone to complain that he relies on the existing behaviour, but I doubt that. -- Peter Eisentraut [EMAIL PROTECTED] http://yi.org/peter-e/ ---(end of broadcast)--- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html
AW: AW: [HACKERS] Truncation of char, varchar types
Excessively long values are currently silently truncated when they are inserted into char or varchar fields. This makes the entire notion of specifying a length limit for these types kind of useless, IMO. Needless to say, it's also not in compliance with SQL. To quote Tom "paragraph and verse please" :-) SQL 1992, 9.2 GR 3 e) """ If the data type of T is variable-length character string and the length in characters M of V is greater than the maximum length in characters L of T, then, Case: i) If the rightmost M-L characters of V are all spaces, then the value of T is set to the first L characters of V and the length in characters of T is set to L. ii) If one or more of the rightmost M-L characters of V are not spaces, then an exception condition is raised: data ^ exception-string data, right truncation. """ Thank you. Is an "exception condition" necessarily an error, or is a warning also an exception condition ? Similarly in SQL 1999 and for other data types. How do people feel about changing this to raise an error in this situation? Can't do. Why not? Because other db's only raise a warning. Of course we don't want to copy that behavior if they are not conformant. See above question. Andreas ---(end of broadcast)--- TIP 6: Have you searched our list archives? http://www.postgresql.org/search.mpl
Re: AW: AW: [HACKERS] Truncation of char, varchar types
Zeugswetter Andreas SB writes: Thank you. Is an "exception condition" necessarily an error, or is a warning also an exception condition ? A warning/notice is called a "completion condition". Because other db's only raise a warning. Of course we don't want to copy that behavior if they are not conformant. See above question. Someone said Oracle raises an error. Informix seems to be the only other db that truncates silently. I think Oracle wins here... -- Peter Eisentraut [EMAIL PROTECTED] http://yi.org/peter-e/ ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])