postgresで新規にテーブル作ってselectした時のこと。
普通に
select * from テーブル名;
でやると表示されるのですが、
select 列名 from テーブル名;
とすると
「column "列名" does not exist」
というエラーが出てしまう。
なんで?(・ω・)?
エラーの内容は「そんな列ありませんよ」というごくごく普通のメッセージ。
もちろん、列名は絶対に間違ってはいない。
\\d で列名表示してそれをコピペしてもエラーになる。
なんで?(・ω・)?
意味がわからないながらも
いろいろと試してみた結果
create文に原因がありました。
create table my_table
("COL1" text ,
"COL2" text,
…,
);
このように、「""で囲って、かつ大文字」で定義したときに起こる現象の様子。
列名を小文字にしたらエラーは発生しなくなりました。
なんじゃそら。
しかもpgAdminで生成されるSQL文で発生してます。
なんじゃそら。
これはわけがわからんなぁ
普通に
select * from テーブル名;
でやると表示されるのですが、
select 列名 from テーブル名;
とすると
「column "列名" does not exist」
というエラーが出てしまう。
なんで?(・ω・)?
エラーの内容は「そんな列ありませんよ」というごくごく普通のメッセージ。
もちろん、列名は絶対に間違ってはいない。
\\d で列名表示してそれをコピペしてもエラーになる。
なんで?(・ω・)?
意味がわからないながらも
いろいろと試してみた結果
create文に原因がありました。
create table my_table
("COL1" text ,
"COL2" text,
…,
);
このように、「""で囲って、かつ大文字」で定義したときに起こる現象の様子。
列名を小文字にしたらエラーは発生しなくなりました。
なんじゃそら。
しかもpgAdminで生成されるSQL文で発生してます。
なんじゃそら。
これはわけがわからんなぁ