[TL;DR] Den enkleste ting at gøre er aldrig at bruge dobbelte anførselstegn omkring objektnavne og bare lade Oracle styre følsomheden af store og små bogstaver på dens standardmåde.
Du kan dog bruge dobbelte anførselstegn i SQLFiddle:
Oracle 11g R2 Schema Setup :
CREATE TABLE products
("P_Id" int, "ProductName" varchar2(10), "UnitPrice" numeric, "UnitsInStock" int, "UnitsOnOrder" int)
//
INSERT ALL
INTO products ("P_Id", "ProductName", "UnitPrice", "UnitsInStock", "UnitsOnOrder")
VALUES (1, 'Jarlsberg', 10.45, 16, 15)
INTO products ("P_Id", "ProductName", "UnitPrice", "UnitsInStock", "UnitsOnOrder")
VALUES (2, 'Mascarpone', 32.56, 23, NULL)
INTO products ("P_Id", "ProductName", "UnitPrice", "UnitsInStock", "UnitsOnOrder")
VALUES (3, 'Gorgonzola', 15.67, 9, 20)
SELECT * FROM dual
//
Forespørgsel 1 :
SELECT "ProductName" FROM products
| ProductName |
|-------------|
| Jarlsberg |
| Mascarpone |
| Gorgonzola |
Oracle-databaser er som standard store og små bogstaver; dog vil de også som standard konvertere alt til store bogstaver, så følsomheden over for store og små bogstaver abstraheres fra dig, brugeren. Det er kun, når du bruger dobbelte anførselstegn, at Oracle bruger det tilfælde, du angiver for identifikatoren.
Siden du brugte cifre i CREATE TABLE
sætningen skal du også bruge identifikatorer med anførselstegn i SELECT
udsagn med det nøjagtige tilfælde, der blev brugt ved tabeloprettelse.
Så kolonnenavnet er ikke ProductName
det er "ProductName"
(med dobbelte anførselstegn).
En bedre løsning er ikke at bruge dobbelte anførselstegn:
Oracle 11g R2 Schema Setup :
CREATE TABLE products(
P_Id int,
ProductName varchar2(10),
UnitPrice numeric,
UnitsInStock int,
UnitsOnOrder int
)
//
INSERT INTO products ( P_Id, ProductName, UnitPrice, UnitsInStock, UnitsOnOrder )
SELECT 1, 'Jarlsberg', 10.45, 16, 15 FROM DUAL UNION ALL
SELECT 2, 'Mascarpone', 32.56, 23, NULL FROM DUAL UNION ALL
SELECT 3, 'Gorgonzola', 15.67, 9, 20 FROM DUAL
//
Forespørgsel 1 :
SELECT ProductName FROM products
| PRODUCTNAME |
|-------------|
| Jarlsberg |
| Mascarpone |
| Gorgonzola |