Обсуждение: Timestamp Length or Precision Bug
Hi, I've noticed this bug for quite a few versions of PgAdmin now. I was hoping that a bug reporting tool would someday appear on the website. I guess this is the best way to report the problem. When creating a 'timestamp without timezone' and specifying the 'length' parameter, invalid SQL is generated. The generated SQL is this: ALTER TABLE usertags ADD COLUMN a timestamp without time zone(3); PostgreSQL expects it to look like this: ALTER TABLE usertags ADD COLUMN a timestamp(3) without time zone; This bug effects create statements too. Here is the generated SQL in that case: CREATE TABLE atable ( ts timestamp without time zone(3) ) WITHOUT OIDS; This applies to both timestamp types (with and without timezone) and I'm assuming possibly the 'time' type as well, though I haven't looked at this. Additionally, the 'length' field is used in the PgAdmin UI, whereas in the PostgreSQL documention, the field is referred to as 'precision.' I'm wondering if the Precision input box in the PgAdmin UI should be enabled instead of the Length input box. Thanks, Adam Taft
On Feb 8, 2008 12:40 AM, Adam Taft <adam@adamtaft.com> wrote: > Hi, > > I've noticed this bug for quite a few versions of PgAdmin now. I was > hoping that a bug reporting tool would someday appear on the website. I > guess this is the best way to report the problem. That is the correct method. > When creating a 'timestamp without timezone' and specifying the 'length' > parameter, invalid SQL is generated. The generated SQL is this: > > ALTER TABLE usertags ADD COLUMN a timestamp without time zone(3); Thanks, fixed in SVN for 1.8.3. > Additionally, the 'length' field is used in the PgAdmin UI, whereas in > the PostgreSQL documention, the field is referred to as 'precision.' > I'm wondering if the Precision input box in the PgAdmin UI should be > enabled instead of the Length input box. I'm not so worried about that - everyone know what it means and it's more than just a couple of lines of code to change it. -- Dave Page EnterpriseDB UK: http://www.enterprisedb.com The Oracle-compatible database company
Dave Page wrote: > On Feb 8, 2008 12:40 AM, Adam Taft <adam@adamtaft.com> wrote: >> Hi, >> >> I've noticed this bug for quite a few versions of PgAdmin now. I was >> hoping that a bug reporting tool would someday appear on the website. I >> guess this is the best way to report the problem. > > That is the correct method. Great, thanks for letting me know. >> When creating a 'timestamp without timezone' and specifying the 'length' >> parameter, invalid SQL is generated. The generated SQL is this: >> >> ALTER TABLE usertags ADD COLUMN a timestamp without time zone(3); > > Thanks, fixed in SVN for 1.8.3. Good, can't wait. I set my timestamp precisions frequently because of compatibility with the Java SQL type which seems to only support up to 3 decimals of precision. I have to set the precision to 3 to be able to correctly compare timestamp equality. >> Additionally, the 'length' field is used in the PgAdmin UI, whereas in >> the PostgreSQL documention, the field is referred to as 'precision.' >> I'm wondering if the Precision input box in the PgAdmin UI should be >> enabled instead of the Length input box. > > I'm not so worried about that - everyone know what it means and it's > more than just a couple of lines of code to change it. > Agreed, this doesn't seem to be a big deal. It is pretty obvious. Thanks, Adam