首先是你的是什么数据库?
如果是
ACCESS
数据库
如果是
SQL
Server
数据库
可以这样:也是那样
,先把数据库中你要自增的字段设为主键,把下面的标识规范选为是,把标量设为1(这个就是你每次要自增的量,如果你要每次自增2,你可以选2),这样就OK
Oracle
数据库也是跟SQL数据库一样,反正数据库都有一个共同点:就是你要自增一,你一定要设为主键,oracle如果用代码实现效果更好,但有点麻烦
注:本人是专学数据库的,有什么问题可以Q我,私聊,反正本人一直都在学,都在用
使用自增长字段为主键有不少问题,比如维护或是在大型分布应用中主键冲突的解决等。在一些大型分布应用中主键一般选用guid,这可以有效的避免主键冲突,减少对主键维护的工程。当然,对于中小型的应用,自增长字段的好处更多一些,简单、快速。
Sqlite中,一个自增长字段定义为INTEGER PRIMARY KEY AUTOINCREMENT,那么在插入一个新数据时,只需要将这个字段的值指定为NULL,即可由引擎自动设定其值,引擎会设定为最大的rowid+1。当然,也可以设置为非NULL的数字来自己指定这个值,但这样就必须自己小心,不要引起冲突。当这个rowid的值大于所能表达的最大值 9223372036854775807 (30及以后版本的rowid最大值)后,rowid的新值会这个最大数之前随机找一个没被使用了的值。所以在rowid达到最大值前,rowid的值是严格单调增加的。
INTEGER PRIMARY KEY AUTOINCREMENT 自增长字段的算法与rowid稍微有些不同。
第一,在达到最大值后,rowid会找已被删除的字段对应的rowid作为新值,而自增长字段则会丢出一个SQLITE_FULL的错误。
第二,自增长字段在增加新值时,是找一个从没被使用过的rowid作为新值,而rowid则是找最大已存在的rowid+1。这里对应用的影响会比较大,尤其是一些对id值有依赖的元记录,只适合使用自增长字段而不能用rowid。
比如,我们设计一个元记录表:
drop table test;
create table test (
[tkid] integer PRIMARY KEY autoincrement, -- 设置主键
[tktype] int default 0,
[tableid] varchar (50),
[createdate] datetime default (datetime('now', 'localtime')) -- 时间
);
第三,使用自增长字段,引擎会自动产生一个sqlite_sequence表,用于记录每个表的自增长字段的已使用的最大值,用户可以看到,并可以用使用 Update、Delete和Insert *** 作,但不建议这么使用,这会让引擎混乱。如果使用rowid,也会有这么一个内部表,用户可以维护rowid 值,但看不到。
这么看来,如果直接使用rowid来代替自增加字段,根据两者的细微的差别,需要注意是否与自己的应用冲突,如果没有冲突,那么用rowid会更快一点。
SQLite中创建自增字段:
简单的回答:一个声明为 INTEGER PRIMARY KEY 的字段将自动增加。
从 SQLite 的 234 版本开始,如果你将一个表中的一个字段声明为 INTEGER PRIMARY KEY,那么无论你何时向该表的该字段插入一个 NULL 值,这个 NULL 值将自动被更换为比表中该字段所有行的最大值大 1 的整数;如果表为空,那么将被更换为 1。
一个新的API函数 sqlite3_last_insert_rowid() 返回最近的插入 *** 作的整形键
注意这个整型键始终比之前插入表中的最后一个键大1。新键相对于表中的已有键来说是唯一的,但它可能与之前从表中删除的键值重叠。要始终得到在整个表中唯一的键,在INTEGER PRIMARY KEY的声明之前加关键词AUTOINCREMENT这样被选的键将总是比表中已存在的最大键大1。若可能的最大键已存在于表中,INSERT *** 作将失败并返回一个SQLITE_FULL错误码
1、首先打开想要设置输入数字后单元格自动填充颜色的表格。
2、以下将在输入数量介于30到100之间的时候自动填充该处单元格颜色,该怎么 *** 作呢?
3、首先选中表格区域。
4、点击上方工具栏中的“条件格式”按钮。
5、在下拉菜单中点击“新建规则”选项。
6、在新建格式规则界面中,选择“只为包含以下内容的单元格设置格式“规则类型,并将单元格值设置大于30小于100。
7、点击格式按钮,进入格式设置界面。
8、在设置单元格格式界面中设置填充颜色为红色或其他颜色。
9、然后点击“确定”按钮,设置单元格格式完成。
10、回到新建规则界面,点击”确定“按钮,新建条件规则完成。
首先码却保你这张表中没有PRIMARY KEY,如果有先删除这张表中的 PRIMARY KEY,
然后创建一个自增长字段
语法如下:
ALTER TABLE `表名` ADD `字段名` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY
例如:
ALTER TABLE `custnew` ADD `cust_id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY
进入设计表界面
首先将该字段的数据类型选成数值型的,比如decimal或者bigint
然后在下面列的标识处,选择“是”
然后下面两行,标识种子:表示自动增长的起点是几,默认1
标识增量:表示每次自增的时候跨度是多少,默认每次自增1
以sqlserver2008R2数据库为例。可以用如下方法:
1、先建表:
create table test
(id int not null,
name varchar(10))
2、在图形界面,找到test表:
3、右键此表名,选择“设计”。
4、右侧出现的页面,找到要设置主键的列,ID列,然后右键,选择“设置主键”。
5、下面一步是要设置自增,在左侧列表中,右键“id列”,然后选择“属性”。
6、其中,找到“标识规范”,标识增量为每次增加多少,标识种子代表起始数值大小。
以上就是关于请问在数据库中怎样将一个字段设为自增全部的内容,包括:请问在数据库中怎样将一个字段设为自增、SQLite数据库的id字段,怎么设置成从1开始自增、sql server建表时怎么设置ID字段自增等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)