首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

Oracle 常用 SQL 語法與資料物件完整參考指南

     編輯:關於SqlServer

一、資料操作語言 (DML)

1. INSERT 插入資料

-- 基本語法
INSERT INTO 表名(欄位1, 欄位2, ...) VALUES (值1, 值2, ...);
-- 從其他表複製
INSERT INTO 表名(欄位1, 欄位2, ...) SELECT 欄位1, 欄位2, ... FROM 其他表名;

關鍵注意事項:

  • 字串值必須用單引號,單引號本身以雙單引號 '' 轉義
  • 字串長度不得超過欄位定義,建議寫入前驗證
  • 日期可用 SYSDATE 或 TO_DATE('2001-08-01','YYYY-MM-DD'),格式如 YYYY-MM-DD HH24:MI:SS
  • 單次 INSERT 字串上限 4000 位元組,超長請用 CLOB + DBMS_LOB 套件
  • 自動遞增序列:CREATE SEQUENCE seq_name INCREMENT BY 1 START WITH 1 MAXVALUE 99999 CYCLE NOCACHE;,插入時用 seq_name.NEXTVAL

2. DELETE 刪除資料

DELETE FROM 表名 WHERE 條件;
  • 刪除不釋放資料區塊表空間,僅標記為 unused
  • 大量刪除整表資料請用 TRUNCATE TABLE 表名;(不可回滾、釋放空間)

3. UPDATE 更新資料

UPDATE 表名 SET 欄位1=值1, 欄位2=值2, ... WHERE 條件;
  • 未賦值欄位會變為 NULL,建議更新前非空驗證
  • 長度超限會報錯,同上需驗證

4. 交易控制與效能守則

  • DML 執行後必須 COMMIT 生效,或 ROLLBACK 復原
  • 單次操作筆數建議 < 1 萬,超過請分批並穿插 COMMIT,避免回滾段暴增導致回應變慢

二、資料定義語言 (DDL)

常用資料型別

型別說明
CHAR固定長度字串
VARCHAR2可變長度字串
NUMBER(M,N)數值,M 總位數,N 小數位數
DATE日期時間

建表最佳實務

  • 小型非空欄位前置,可空欄位後置
  • 欄位名建議用英文,支援中文但不推薦
  • 可設定預設值(如 DEFAULT SYSDATE)自動記錄操作時間
  • 加上約束:UNIQUE、PRIMARY KEY

ALTER 修改物件

支援修改表、索引、視圖、同義詞、程序、函數結構,語法詳見 Oracle 官方文件。

三、進階物件與管理

  • 視圖:CREATE VIEW ... AS SELECT ... 簡化複雜查詢、控制存取
  • 同義詞:CREATE SYNONYM ... FOR ... 提供透明存取遠端/不同 Schema 物件
  • 序列:獨立產生唯一數值,常用於主鍵自動遞增
  • 索引:CREATE INDEX ... ON ... 加速查詢,維護成本需權衡
  • 觸發器:CREATE TRIGGER ... BEFORE/AFTER INSERT/UPDATE/DELETE ... 實現業務規則自動化
  • 程序/函數:PL/SQL 封裝業務邏輯,支援參數、例外處理、游標
  • 資料庫連結:CREATE DATABASE LINK ... 實現跨資料庫分散式查詢

結語

掌握上述核心 SQL 語法與物件類型,配合交易控制與效能最佳實務,即可高效開發與維護 Oracle 資料庫應用。建議搭配官方文件深入學習各物件進階特性與優化技巧。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved