2017-07-22 1 views
0
Create View ViewA AS 

Select o.orderid, o.dishid, o.quantity, o.ordertime, o.deliveryaddress, d.dishid, r.description, r.location, c.firstname, c.lastname, c.phonenumber, c.address, c.city, c.state, c.zip 

FROM Orders o 

JOIN Dishes d On (o.dishid = d.dishid) 

JOIN Customers c ON (o.customerid = c.customerid) 

JOIN Restaurants r ON (d.restaurantid = r.restaurantid); 

Je suis censé créer une vue comme cela, mais je ne comprends pas l'erreur qui se lit comme suit:Erreur dans la création Voir Oracle MySQL

ORA-00957: nom en double colonne 00957. 00000 - « colonne en double nom "

Où est le nom de la colonne en double?

Répondre

1

Vous devez fournir des alias pour chaque colonne.

Exécuter ceci:

Create View ViewA AS Select o.orderid ORDER_ID, o.dishid ORDER_DISH_ID, o.quantity ORDER_QUANTITY, o.ordertime ORDER_TIME, o.deliveryaddress DELIVERY_ADDRESS, d.dishid DISH_ID, r.description RES_DESCRIPTION, r.location RES_LOCATION, c.firstname CUST_FIRSTNAME, c.lastname CUST_LASTNAME, c.phonenumber CUST_PHONE, c.address CUST_ADDRESS, c.city CUST_CITY, c.state CUST_STATE, c.zip CUST_ZIP FROM Orders o JOIN Dishes d On (o.dishid = d.dishid) JOIN Customers c ON (o.customerid = c.customerid) JOIN Restaurants r ON (d.restaurantid = r.restaurantid); 
0

Vous avez o.dishid et d.dishid - oracle va essayer d'appeler les deux dishId - Vous devez les alias à