程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> Access數據庫入門 >> 設定Access數據庫自增長字段初始值

設定Access數據庫自增長字段初始值

編輯:Access數據庫入門

  最近在做論壇數據轉換程序。例如表src, 表dest都有一個id自增長字段,(都是access數據庫,起始值1 ,步長1)
表src中id,char兩字段的值為

1、a
2、b
3、c
6、d
7、e
9、f

  這樣在將src中的記錄插入表dest的時候會有麻煩,使得表dest中記錄如下所示

1、a
2、b
3、c
4、d
5、e
6、f

  這樣造成dest和其它關聯表中的數據難以對應 。因此有必要在向表dest中插入記錄時 設置其id字段的起始值,然後再進行插入操作
在 http://access911.net/fixhtm/71FAB01E13DC.htm?tt=    發現如下文字:

  通過以下語句,你可以在建表的時候指定其起始值和步進值:

CREATE TABLE tblNewOrder2 (
  OrderId AUTOINCREMENT (1000, 10),
  ItemId LONG, Quantity LONG) 

  你也可以用下面的語句修改下一個起始值和步進值:

ALTER TABLE tblOrder
  ALTER COLUMN OrderId COUNTER (2000, 50) 

  要重新開始:
ALTER TABLE tableName
  ALTER COLUMN OrderId COUNTER (1, 1) 

  在 VBE 界面裡面用以下代碼:
docmd.runsql "ALTER TABLE tableName ALTER COLUMN OrderId COUNTER (1, 1)"

  這裡要注意的是自動編號往往被用作標識記錄的唯一性,但是 Jet 在用 DDL 語句更改自動編號的同時不會保證修改後的自動編號仍然保持唯一性,因此會出現標識號重復的現象。要避免這一現象最好把自動編號設定為主鍵、或者不可重復。

  哈哈 看來我的問題可以解決了 ,雖然是很不起眼的東西 ,但是用到時候沒有 就會很抓狂 ^_^

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved