壓縮和修復 Access 檔案

若要確保最佳效能,您應該定期壓縮和修復 Microsoft Access 檔案。另外,如果使用 Access 檔案發生嚴重問題而且 Access 試著修復它,您可能會收到訊息說修復作業已經取消而且您應該壓縮和修復檔案。
若要壓縮和修復 Access 資料庫,使用者必須具有該 Access 資料庫的「開啟/執行」和「獨佔式開啟」權限。


訂單之編號欄位使用自訂自動編號的方法

步驟一: 

建立一個處理編號記錄的『訂單編號』資料表,欄位只需要兩個:日期、編號。

 

步驟二: 

訂單表單的BeforeInsert事件加入下方的程式碼:

-----------------------------------------------------------------------------------------------------------------------------------------

Private Sub Form_BeforeInsert(Cancel As Integer)
    Dim Now_Date As Date
    Now_Date = Format(Date, "yyyy/mm/dd")

'訂單編號資料表中尋找是否有今天日期的記錄

d = DLookup("編號", "訂單編號", "日期 =#" & Now_Date & "#")
If IsNull(d) Then    '如果沒有,就新增以一筆記錄,日期為今天的日期,編號起始值為0

Set d1 = CurrentDb.OpenRecordset("訂單編號")   
d1.AddNew   
d1("日期") = Date
d1("編號") = 0
d1.Update

End If

'訂單表單之『訂單編號』欄位填入例如951201-01之訂單編號

Me![訂單編號] = Format(Date, "emmdd") & "-" & Format(d + 1, "00")
End Sub
-----------------------------------------------------------------------------------------------------------------------------------------

使用VBA程式碼『修護與壓縮』後端資料庫

  1. 設計一個執行後端資料庫『修護與壓縮』的表單
  2. 表單中新增一個指令按鈕控制項,名稱為確定
  3. 確定按鈕的OnClick事件加入以下程式碼:

使用於 SQL 陳述式中的運算式範例

您可以在 SQL 陳述式的許多地方使用運算式,如同下列範例中所顯示。運算式以粗體文字顯示。

運算式

結果

SELECT [名字], [姓氏] FROM [員工] WHERE [姓氏] = "Davolio";

顯示員工的姓氏為 Davolio [名字] [姓氏] 欄位值。

SELECT [產品編號], [產品名稱] FROM [產品] WHERE [類別編號] = Forms![新產品]![類別編號];

顯示 [產品] 資料表記錄中 [產品編號] [產品名稱] 欄位中的值,指出 [類別編號] 值與一 [新產品] 表單中所指定的 [類別編號] 的值相吻合。

SELECT Avg([延伸價格]) AS [平均延伸價格] FROM [Order Details Extended] WHERE [延伸價格] > 1000;

顯示在名為 [平均延伸價格] 的欄位,這是訂單的平均延伸價格,在 [延伸價格] 欄位中它的值超過 1,000

SELECT [類別編號],Count([產品編號]) AS [CountOfProductID]
FROM [
產品] GROUP BY [類別編號] HAVING Count([產品編號]) > 10;

在命名為 CountOfProductID 的欄位中,顯示超過 10 個產品的屬性類別顯示產品總數。

附註:

SQL字串/陳述式:定義 SQL 指令 (SELECTUPDATE DELETE) 的運算式,且包括子句,如 WHERE ORDER BY

SQL字串/陳述式通常用於查詢及聚合函數。

 

使用於更新查詢中的運算式範例

在查詢設計格線區 [更新至] 儲存格中使用運算式時,請依下列的方法。

運算式

結果

"業務員"

將文字值變更成「業務員」

#8/10/99#

將日期值變更成 10-Aug-99

將在 [/] 欄位的 [] 數值改變成為 []

"PN" & [PartNumber]

新增 PN 至每個指定 PartNumber 的開頭

[單價] * [數量]

計算 [單價] [數量] 的乘積

[貨運] * 1.5

增加百分之五十的運費金額

DSum("[數量] * [單價]",
"
訂貨明細", "[產品編號]=" & [產品編號])

當在目前資料表中的產品編號與在 [訂貨明細] 資料表中的產品編號相同時,更新單價和數量乘積的銷售總額

Right([ShipPostalCode], 5)

裁剪最左邊的字元,保留五個最右邊的字元

IIf(IsNull([單價]), 0, [單價])

[單價] 欄位中將 Null值變更為零。

© 2024 JoyCat.org 版權所有.