Re: JDBC bug?
От | Bruce Momjian |
---|---|
Тема | Re: JDBC bug? |
Дата | |
Msg-id | 200111261917.fAQJHVa09726@candle.pha.pa.us обсуждение исходный текст |
Ответ на | Re: JDBC bug? ("Colin Freas" <cef6@georgetown.edu>) |
Список | pgsql-jdbc |
> >> So does postgres not support mixed case in table names, or the backend > >> does but the clients dont, or what? > > > >Well, we support mixed case identifiers, but they need to be > >double-quoted, as you saw. The \d behavior looks correct. The jdbc > >issue looks more complicated because we are forcing lowercase in the > >jdbc code. Perhaps some jdbc folks can comment on that. > > I think Nate's being kind calling this an annoyance. I may have missed > something in the docs, but I just spent a few frustrating hours confronting > a similar issue with tables of mixed case. Everything was working correctly > with my servlet, except when I referenced a column with a name like > questionID in a where clause. Note the casing. I had no idea this is what > was wrong until, other ideas exhausted, I recreated my query text with > pgadmin's query wizard and it put quotes around everything in the SQL it > generated. > > Is there a pqsql-jdbc log somewhere that this might have shown up? I was so > sure it was my java code (which in the end it was, sort of :) I never > bothered to check any Postgres logs. Would it have shown up somewhere > there? Either way, personally, I think this isn't the best behavior. I > don't want to get into a casing flame war, but, I would've expected an > exception if it couldn't figure out what was happening with the where > clause, something at least. Yes, I agree, it clearly looks like a jdbc bug. If you have created mixed-case identifiers, the jdbc toLower call make accessing it impossible. If we can trust the case of the indentifier supplied, we can just put double-quotes around it to preserve the case as passed to the backend. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
В списке pgsql-jdbc по дате отправления: