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

Oracle、Access、SQL Server 語法差異對照表

     編輯:Oracle 資料庫基礎

三大資料庫常用語法快速對照

專案常需同時支援 Oracle、Access、SQL Server 三種資料庫,SQL 語法差異是開發痛點。本文整理 13 類常見差異,助你撰寫相容性更高的跨平台查詢。

核心語法對照表

功能Access (A)SQL Server (S)Oracle (O)
目前系統時間Now()GETDATE()SYSDATE FROM DUAL
字串串接&+||
字串函數
(截取/大小寫/查找)
Mid, UCase, LCase, InStrSUBSTRING, UPPER, LOWER, CHARINDEXSUBSTR, UPPER, LOWER, INSTR
條件判斷IIFCASE WHEN THENDECODE / CASE WHEN THEN
日期字面值#2007-5-1# 或 CDATE()'2007-5-1'TO_DATE('2007-05-01','YYYY-MM-DD')
型別轉換CStr, CInt, CDateCONVERTTO_CHAR, TO_NUMBER, TO_DATE
INSERT...SELECT 括號不需括號可加可不加可加可不加
保留字處理[] 括住[] 括住雙引號 ""
別名 AS 關鍵字不可省略可省略可省略
表別名前綴選用選用必須加表別名
查詢含冒號設 ParamCheck=False無問題無問題
布林值儲存-1/01/01/0 (NUMBER(1))
VARCHAR 最大長度2558000/MAX4000

實務建議

  • 日期處理統一用參數化查詢,避免格式衝突。
  • 布林邏輯改寫為 <> 0 相容三平台。
  • 長文字欄位:Access 用 Memo,SQL Server 用 VARCHAR(MAX),Oracle 用 CLOB。
  • 動態 SQL 盡量使用 ANSI-92 標準語法,減少平台差異。

掌握這些差異點,能大幅降低多資料庫專案的維護成本。

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