Oracle DELETE 語句用於從表中刪除記錄,語法為:DELETE FROM table_name WHERE condition。條件可選,限制刪除記錄。支援級聯刪除,即刪除父表記錄時,也可刪除子表記錄。使用時需謹慎,因刪除操作不可逆。
Oracle DELETE 語句
DELETE 語句用於從 Oracle 資料庫表中刪除記錄。其基本語法如下:
<code>DELETE FROM table_name WHERE condition;</code>
其中:
範例:
刪除名為"customers" 表中所有記錄:
<code>DELETE FROM customers;</code>
刪除"customers" 表中customer_id 為10的記錄:
<code>DELETE FROM customers WHERE customer_id = 10;</code>
刪除多個條件的記錄:
可以使用邏輯運算子(AND、OR)刪除符合多個條件的記錄。
範例:
刪除"customers" 表中城市為"New York" 且年齡大於30 的記錄:
<code>DELETE FROM customers WHERE city = 'New York' AND age > 30;</code>
級聯刪除:
當表之間存在外鍵約束時,刪除父表中的記錄可能會導致子表中的記錄也被刪除。這被稱為級聯刪除。
要啟用級聯刪除,必須在建立外鍵約束時指定 ON DELETE CASCADE 選項。
範例:
考慮以下表格結構:
<code>CREATE TABLE orders ( order_id NUMBER PRIMARY KEY, product_id NUMBER, CONSTRAINT FK_order_product FOREIGN KEY (product_id) REFERENCES products (product_id) ON DELETE CASCADE );</code>
如果從"products" 表中刪除產品,也會刪除"orders" 表中引用該產品的所有訂單。
注意事項:
以上是oracle delete語句怎麼寫的詳細內容。更多資訊請關注PHP中文網其他相關文章!