2014-05-21 58 views
0

我無法從多個表中刪除。
我使用下面的代碼從多個表中刪除:從多個表中刪除5

DELETE 
FROM usession, 
    upklist, 
    projshar USING usession 
LEFT JOIN upklist 
ON upklist.session_id = usession.session_id 
LEFT JOIN Projshar 
ON projshar.session_id = usession.session_id 
WHERE usession.session_id  = 
    (SELECT session_id 
    FROM USESSION 
    WHERE delete_session_id IS NULL 
    AND user_id    = 
    (SELECT user_id FROM users WHERE regexp_like(USER_NAME, 'gfcashmo', 'i') 
    ) 
); 

我使用SQL Developer的連接到Oracle數據庫,並出現以下錯誤 它引用的第二行 - FROM usession,

Error at Command Line:274 Column:13 Error report: SQL Error: ORA-00933: SQL command not properly ended 00933. 00000 - "SQL command not properly ended" *Cause:
*Action:

+1

我不認爲Oracle支持在一個語句中從多個表中刪除。你可以在這裏閱讀關於Oracle的刪除:http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_8005.htm#i2112830。 –

+1

您不能從一個語句中的多個表中刪除。可能你會因爲使用選擇和連接從單個表中刪除而導致混淆 –

+0

如果用SELECT *替換DELETE並執行該操作會發生什麼? –

回答

0

根據DELETE語句的ducumentation,Oracle不支持從多個表中刪除。