設定Access數(shù)據(jù)庫自增長字段初始值

字號:

最近在做論壇數(shù)據(jù)轉(zhuǎn)換程序。例如表src, 表dest都有一個id自增長字段,(都是access數(shù)據(jù)庫,起始值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和其它關聯(lián)表中的數(shù)據(jù)難以對應 。因此有必要在向表dest中插入記錄時 設置其id字段的起始值,然后再進行插入操作
    在 http://access911.net/fixhtm/71FAB01E13DC.htm?tt= 發(fā)現(xiàn)如下文字:
    通過以下語句,你可以在建表的時候指定其起始值和步進值:
    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 語句更改自動編號的同時不會保證修改后的自動編號仍然保持性,因此會出現(xiàn)標識號重復的現(xiàn)象。要避免這一現(xiàn)象把自動編號設定為主鍵、或者不可重復。