參考:
問題描述:
使用pgadmin新建了乙個表user,新增了id、name、enscore三個字段。在user表中新增了幾條記錄後,使用select * from user;查詢沒有問題,會顯示user表中的所有記錄。在執行select name,enscore from user;查詢失敗,提示「column enscore does not exist」。
仔細檢視建表指令碼,發現enscore加了雙引號,所以修改查詢語句為select name,"enscore" from user;查詢成功。
create table test."user"
( id integer not null,
name character varying(80) not null,
"enscore" double precision not null,
constraint primarykey primary key (id)
)with (
oids=false
);alter table test."user"
owner to test;
結論:
1)pg資料庫對錶名、欄位名是區分大小寫的,通過pgadmin建表時正常建立,用sql語句的時候需要加雙引號,如果jdbc查詢等處,記得使用轉義符號。
2)pg在sql語句中對大小寫是不敏感的,
例如select id from user;與select id from user;結果是一樣的,但是select "enscore" from user 是ok的,但select "enscore" from user 是不對的。
資料庫修改表名,欄位名 字段型別
修改表 1 修改表的名稱呢 alter table 表名 rename to 新的名字 demo alter table ta1 rename to ta0 2 新增乙個新字段 alter table 表名 add 新字段 欄位的型別 demo alter table ta0 add unames ...
PostgreSQL 欄位名大小寫的坑
最近用golang對接postgresql的時候發現,如果欄位名有大寫字母,這時候直接判斷查詢就會報找不到欄位的錯誤 比如 a bb cc start get obj err pq column a bb cc does not exist 檢查了資料庫對應字段存在啊,不對,怎麼變成小寫?大小寫不識...
規範資料庫表字段大小寫 小寫欄位名全部更改為大寫
公司的資料庫規範sql server欄位名稱需要大寫,最近檢查資料庫看到有些欄位名稱是小寫。於是需要把小寫的欄位名稱更改為大寫,先找出下面的包含小寫的sql資料表。select c.name as colname,t.name as tablename from sys.columns c join...