压缩access数据库后不重置自动编号字段
时 间:2007-06-06 00:00:00
作 者:UMVsoft整理 ID:8 城市:上海 QQ:2851379730
摘 要:添加新记录时不当删除最后一个记录或表中记录或窗体中具有 AutoNumber 字段, 并压缩数据库, 然后 AutoNumber 字段不发生作用,使用以下两种方法之一可解决此问题。
正 文:
一、解决方案如下:
方法 1
创建新表并追加现有记录到新表。 除非将递增值编程新记录添加到此表将开头的 AutoNumber 值为一个。
注意 如果不再需要记录, 可以也将 AutoNumber 字段通过从表, 删除所有记录和再压缩数据库。 但是, 如果您使用此方法, 您能得到删除记录。
要创建新表并现有记录追加到新表在 MicrosoftAccess 数据库 (.mdb), 请按照下列步骤:
1. 单击数据库窗口中您表。
2. 按 CTRL + C
3. 按 Ctrl + V。
4. 单击 结构只 粘贴表方式 对话框中, 键入名称 tblNewTable , 然后单击 确定 。
5. 在 Microsoft Office Access 2003 或 Microsoft Access 2002, 中 数据库对象 指向 视图 菜单上, 单击 查询 , 依次 设计视图中创建查询 。
其他 组中 Microsoft Office Access 2007年, 中 创建 选项卡, 依次 查询设计 。
6. 添加 , 单击旧表, 然后和 Close , 对话框中 显示表 。
7. Access 2003 中或在 Access 2002, 单击 查询 菜单上 追加查询 。
在 Access 2007年, 单击 设计 选项卡上 查询类型 组中 追加 。
8. 追加 对话框中, tblNewTable 在 表名称 框中, 单击, 然后单击 确定 。
9. 所有字段添加到查询设计网格除 AutoNumber 字段。
10. 在 Access 2003 或在 Access 2002, 在 查询 菜单上, 单击 运行 到记录追加到新表。
在 Access 2007年, 单击 设计 选项卡上将记录追加到新表 结果 组中 运行 。
11. 打开 tblNewTable 表, 然后添加记录。
注意 AutoNumber 是下一个高编号。
方法 2
您在 MicrosoftAccess 数据库 (.mdb) 使用下列函数重置种子值将 AutoNumber 字段编程。 可添加到模块, 函数, 然后在调试窗口运行它。 或从一个命令按钮或宏中调用函数。
注意 对于此代码以运行正确, 必须引用 MicrosoftActiveX 数据对象 x 和 Microsoft ADO Ext x 对于 DDL 和安全库 (其中 x 是 2.1 或更高。 可以进行, 单击 工具 菜单在 VisualBasic 编辑器上 引用 。 确保 MicrosoftActiveX 数据对象 x 和 Microsoft ADO Ext x 为 DDL 和安全库 复选框被选中。
Function ChangeSeed(strTbl As String, strCol As String, lngSeed As Long) As Boolean
'You must pass the following variables to this function.
'strTbl = Table containing autonumber field
'strCol = Name of the autonumber field
'lngSeed = Long integer value you want to use for next AutoNumber.
Dim cnn As ADODB.Connection
Dim cat As New ADOX.Catalog
Dim col As ADOX.Column
'Set connection and catalog to current database.
Set cnn = CurrentProject.Connection
cat.ActiveConnection = cnn
Set col = cat.Tables(strTbl).Columns(strCol)
col.Properties("Seed") = lngSeed
cat.Tables(strTbl).Columns.Refresh
If col.Properties("seed") = lngSeed Then
ChangeSeed = True
Else
ChangeSeed = False
End If
Set col = Nothing
Set cat = Nothing
Set cnn = Nothing
End Function
二、本文摘自:http://support.microsoft.com/kb/287756/zh-cn#top
Access软件网官方交流QQ群 (群号:483923997) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 【Access窗体导出PDF】...(04.08)
- 【Access窗体导出PDF】...(04.07)
- Access两种方式实现即时更...(03.01)
- Access隐藏与显示lacc...(01.12)
- 【Access高效办公】将每个...(12.23)
- Access21点游戏源代码(12.13)
- 【Access窗体导出Exce...(11.15)
- 【Access开发】Acces...(11.14)
- 通过Access宏录入数据到选...(11.10)
学习心得
最新文章
- ACCESS精华集锦资料.CHM(04.25)
- Access VBA语句If Me...(04.24)
- 【Access修改记录示例】编辑选...(04.22)
- 【Access表名称命名建议】将A...(04.20)
- Access学习笔记--用Acce...(04.19)
- 【Access重复项查询示例】将A...(04.17)
- Access快速开发平台企业版--...(04.16)
- 【Access模块示例】通过模块代...(04.15)
- Access查询里面分组合计功能添...(04.13)
- 【Access删除查询】删除数字最...(04.12)