2015-03-04 87 views
5
dxdb=> \d dxtest_loadprofiletosale 
          Table "public.dxtest_loadprofiletosale" 
    Column | Type |        Modifiers        
-------------+----------+----------------------------------------------------------------------- 
id   | integer | not null default nextval('dxtest_loadprofiletosale_id_seq'::regclass) 
TransDate | date  | 
IssueDate | date  | 
CustomerNum | smallint | not null 
Indexes: 
    "dxtest_loadprofiletosale_pkey" PRIMARY KEY, btree (id) 

dxdb=> INSERT INTO dxtest_loadprofiletosale(id, TransDate, IssueDate, CustomerNum) VALUES(1, '2015-03-04','2015-01-01',01); 
ERROR: column "transdate" of relation "dxtest_loadprofiletosale" does not exist 
LINE 1: INSERT INTO dxtest_loadprofiletosale(id, TransDate, IssueDat... 

Özür dilerim, zaten "aktarma" sütunu var, neden var değil mi?PostgreSQL sql komut hatası sütunu 'mevcut değil'

cevap

8

Sunulan sütun değil transdate"TransDate" denir. Onları harf duyarlı kılan sütun adları için çift tırnak kullanarak tablo, oluşturulan ve tüm çift tırnak zamanı kullanmalısınız:
http://www.postgresql.org/docs/current/static/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS

: kılavuzda olan SQL tanımlayıcıları hakkında

INSERT INTO dxtest_loadprofiletosale 
    (id, "TransDate", "IssueDate", "CustomerNum") 
VALUES 
    (1, '2015-03-04','2015-01-01',01); 

Daha fazla bilgi Genelde

daha iyi için asla kullanım çift tırnak - bu uzun vadede çok daha az sorun verecektir.

+0

çok teşekkür ederim, sonra deniyorum: INSERT INTO dxtest_loadprofiletosale (id, "TransDate", "IssueDate", "CustomerNum") DEĞERLER (1, '2015-03-04', '2015-01-01', 01); çalışıyor! –

İlgili konular