这就是:
SQL> select table_name from user_tables;
TABLE_NAME
------------------------------
Discount
Taxes
Customer
Vehicles
WorkOrder
Task
TaskPart
Employee
EmplyeeTask
WorkOrderPart
InvoiceDetails
TABLE_NAME
------------------------------
Invoice
Parts
InvoicePrimaries
14 rows selected.
SQL> select * from Discount;
select * from Discount
*
ERROR at line 1:
ORA-00942: table or view does not exist
SQL>
我无法访问该表。我可以在C#中使它工作正常,但在Oracle GUI和SQL命令行中,我无法选择表。 (这是一个使用Oracle Express的个人自制数据库)
答案 0 :(得分:4)
因为在user_tables
中,表名用大写和小写字母书写。我假设您使用
create table "Discount" ...
一般来说,oracle以大写字母保存表名,而没有双重配额的表名以大写形式搜索。因此你的
select * from Discount
搜索名为DISCOUNT而非Discount的表。您必须明确告诉oracle您要保留表名的字母大小写。这也是通过双配额完成的。所以
select * from "Discount"
应该有用。