2012-06-30 21 views
6

Tôi đã cài đặt Oracle 10g trong XP ảo của tôi và tạo ra một bảng sử dụngORA 00.904 Lỗi: Định danh không hợp lệ

create table reg1 (
    fname varchar2(30), 
    lname varchar2(30), 
    addr varchar2(30), 
    mail varchar2(30), 
    occu varchar2(30), 
    uname varchar2(30), 
    passwd varchar2(30) 
); 

và bảng tạo successfully.But khi tôi đang cố gắng để lấy các giá trị bằng cách truy vấn đơn giản như

select fname, lname 
    from reg1 
where uname="bbb"; 

tôi nhận được lỗi như

ORA-00904: "bbb": invalid identifier

tôi không thể hiểu những gì tôi đã làm sai ở đây.

Trả lời

17

Sử dụng dấu nháy đơn.

select fname,lname from reg1 where uname='bbb'; 
+0

cảm ơn bạn. Vấn đề của tôi đã được giải quyết :) – Mistu4u

5

Oracle sử dụng dấu ngoặc kép " để xác định tên đối tượng được lồng. Ví dụ: bảng "test" không giống như bảng test.

Chuỗi phải được kèm theo dấu ngoặc đơn, '.

Làm truy vấn của bạn:

select fname, lname from reg1 where uname = 'bbb'; 

gì thực sự xảy ra trong truy vấn của bạn được Oracle đang cố gắng tìm ra cột "bbb" trong bảng reg1, như cột này không tồn tại bạn nhận được lỗi ném.

+0

Không chỉ Oracle, tất cả cơ sở dữ liệu SQL –

Các vấn đề liên quan