1、给数据库备份(如果你没有先备份的习惯,那就从现在起开始养成这个习惯)
2、打开数据库,发现原数据库表名为test。单击选定,然后点上面的“设计”,将id字段的数据类型改为“数字”,关闭保存。
3、双击test,在id字段添上你需要的值,如11。在这里,也可以修改已有的数据的数值。关闭表。这时,该字段是不能改回“自动编号”数据类型的。
4、右键单击表test-->复制,然后右键点一下空白处,粘贴-->,表名称写入“test1”,选择“只粘贴结构”-->确定。新表test1生成了。
5、单击选中test1,点击上面的“设计”。把id字段的数据类型改为“自动编号”。因为这时test1里是没有数据的,所以可以修改成功。
6、右键单击表test-->复制,然后右键点一下空白处,粘贴-->,表名称写入“test1”(与步骤4相同),但选择“将数据追加到已有的表”-->确定。
7、将表test改名为test_bad,将test1改名为test。结束。这里要养成良好习惯,不要猴急地把原test表删除,而是改名。等全部测试成功后,再删不迟。
8、总结:access的“自动编号”数据类型可以改成数字等其他类型,但有数据后,就不能改回来了。那么就先复制一个结构,在有数据之前把该类型改回“自动编号”,然后再导入数据。这时该字段的值也是导入的,而不是自动生成的,但以后再添加新数据时又是自动生成的了。改变了自动编号的值,所有程序都无需改变。很简单。
最后,别忘了:1、让这个技术员抓紧时间提高自己的编程水平,更不要偷懒;2、告诉客户,此类文章不能删除(或者直接去掉“删除”功能)。
详解Access数据库自增长字段值的修改及初始值的设置
Access数据库自增长字段值的修改及初始值的设置是本文我们主要要介绍的内容,Access的自增长字段的值的修改,发现原来Access自增长比起SQL Server的标识列有一定的灵活性。比如Access的自增长字段可以直接insert记录时指定数值,但是不要和已经有的记录的该字段值重复了,会主键冲突的,而SQL Server就不行了。
并且如果某个自增长序号已经有记录了,那么删除这条记录后还可以设定该值作为新记录的序号值。但是对于已有的记录,就不能修改自增长字段的值了,如果确需修改,有两种方法,要不就是删除原记录,重新插入数据时指定该字段值。要不就是去除自增长属性,修改成一个不重复的值保存后再将该字段类型设置成自动增长。
那么,如果想设定 Access 数据库自增长字段的初始值该怎么办呢,这个较为简单,可以通过特定 SQL 语句即可实现。
如果创建表结构时想设定自增长字段的初始值可以这条语句:
CREATE TABLE 表名 ( 自增长字段名 AUTOINCREMENT ( 1000 , 10 ), ItemId LONG , Quantity LONG )
如果表结构已经存在,可以通过这条语句修改:
ALTER TABLE 表名 ALTER COLUMN 自增长字段名 COUNTER ( 2000 , 50 )
如果想复位自增长种子重新开始,可以这样:
ALTER TABLE 表名 ALTER COLUMN 自增长字段名 COUNTER ( 1 , 1 )
好了, SQL Server 和 Access 两种数据库的自增长(标识列)都可以修改字段值了。有什么用呢,呵呵,很有用,对于我目前手同的工作来说,就是可以在程序中增加数据导入导出文本文件了,并且导入后一些关键的排序主键字段值不会发生改变,能保持原有数据的编号。