Từ những gì tôi đã đọc, lỗi này có nghĩa là bạn không tham chiếu chính xác tên bảng. Một lý do phổ biến là bảng được xác định bằng cách viết chữ hoa và chữ thường và bạn đang cố truy vấn nó bằng tất cả chữ thường.
Nói cách khác, những điều sau không thành công:
CREATE TABLE "SF_Bands" ( ... );
SELECT * FROM sf_bands; -- ERROR!
Sử dụng dấu ngoặc kép để phân tách các số nhận dạng để bạn có thể sử dụng cách viết chữ hoa-thường cụ thể khi bảng được xác định.
SELECT * FROM "SF_Bands";
Theo nhận xét của bạn, bạn có thể thêm một lược đồ vào "search_path" để khi bạn tham chiếu một tên bảng mà không đủ điều kiện cho lược đồ của nó, truy vấn sẽ khớp với tên bảng đó bằng cách đánh dấu từng lược đồ theo thứ tự. Cũng giống như PATH
trong shell hoặc include_path
trong PHP, v.v. Bạn có thể kiểm tra đường dẫn tìm kiếm lược đồ hiện tại của mình:
SHOW search_path
"$user",public
Bạn có thể thay đổi đường dẫn tìm kiếm giản đồ của mình:
SET search_path TO showfinder,public;
Xem thêm http://www.postgresql.org/docs/8.3/static/ddl-schemas.html