标签: auto-increment

防止MySQL重复插入时自动增加

使用MySQL 5.1.49,我正在尝试实现一个标记系统我遇到的问题是带有两列的表:id(autoincrement),tag(unique varchar) (InnoDB)

使用查询时,即使忽略插入INSERT IGNORE INTO tablename SET tag="whatever",自动增量id值也会增加.

通常这不会是一个问题,但我希望很多可能的尝试为这个特定的表插入重复项,这意味着我id的新行的字段的下一个值将跳得太多.

例如,我最终会得到一张表3行但不好id的表

1   | test
8   | testtext
678 | testtextt
Run Code Online (Sandbox Code Playgroud)

此外,如果我不这样做INSERT IGNORE并且只是定期INSERT INTO处理错误,则自动增量字段仍会增加,因此下一个真正的插入仍然是错误的自动增量.

如果有INSERT重复的行尝试,有没有办法停止自动增量?

正如我对MySQL 4.1的理解,这个值不会增加,但我想做的最后一件事是要么SELECT提前做很多语句来检查标签是否存在,或者更糟糕的是,降级我的MySQL版本.

mysql innodb insert duplicates auto-increment

37
推荐指数
4
解决办法
4万
查看次数

SQL Server中自动增量主键的上限

SQL Server中自动增量主键的上限是多少?当SQL Server自动增量主键达到其上限时会发生什么?

sql sql-server auto-increment

35
推荐指数
1
解决办法
3万
查看次数

具有增量整数列的MSSQL Select语句...不是来自表

如果可能的话,我需要一个t-sql查询,它从任意表返回值,也返回一个增量整数列,第一行的值为1,第二行的值为2,依此类推.

这个列实际上并不存在于任何表中,并且必须是严格增量的,因为ORDER BY子句可以对表的行进行排序,并且我希望增量行始终处于完美形状...

提前致谢.

--EDIT抱歉,忘记提及,必须在SQL Server 2000上运行

sql sql-server sql-server-2000 row-number auto-increment

34
推荐指数
3
解决办法
10万
查看次数

如何使用另一个表中的MAX值重置MySQL AutoIncrement?

我知道这不起作用,以各种形式尝试并且一直都失败了.实现以下结果的最简单方法是什么?

ALTER TABLE XYZ AUTO_INCREMENT = (select max(ID) from ABC);
Run Code Online (Sandbox Code Playgroud)

这非常适合自动化项目.谢谢!

SELECT @max := (max(ID)+1) from ABC;        -> This works!
select ID from ABC where ID = (@max-1);     -> This works!
ALTER TABLE XYZ AUTO_INCREMENT = (@max+1);  -> This fails :( Why?
Run Code Online (Sandbox Code Playgroud)

mysql sql reset auto-increment

34
推荐指数
5
解决办法
4万
查看次数

如何在db2中使用AUTO_INCREMENT?

我认为这很简单,但我似乎无法在我的db2数据库中使用AUTO_INCREMENT.我做了一些搜索,人们似乎正在使用"默认生成",但这对我不起作用.

如果它有帮助,这里是我想要创建的表,其中sid是自动递增的.

  create table student(
      sid integer NOT NULL <auto increment?>
      sname varchar(30),
      PRIMARY KEY (sid)
      );
Run Code Online (Sandbox Code Playgroud)

任何指针都表示赞赏.

db2 auto-increment

34
推荐指数
2
解决办法
9万
查看次数

autoIncrement如何在NodeJs的Sequelize中工作?

Sequelize的文件并没有详细说明autoIncrement.它只包括以下示例:

// autoIncrement can be used to create auto_incrementing integer columns
incrementMe: { type: Sequelize.INTEGER, autoIncrement: true }
Run Code Online (Sandbox Code Playgroud)

基于此示例,我有以下代码:

db.define('Entries', {
    id: {
        type: Seq.INTEGER,
        autoIncrement: true,
        primaryKey: true
    },
    title: {
        type: Seq.STRING,
        allowNull: false
    },
    entry: {
        type: Seq.TEXT,
        allowNull: false
    }
}
Run Code Online (Sandbox Code Playgroud)

现在,当我想创建一个条目时,我想做这样的事情:

models.Entry.create({title:'first entry', entry:'yada yada yada'})
Run Code Online (Sandbox Code Playgroud)

但是,当我执行该代码时,我得到一个数据库错误:

列"id"中的空值违反非空约束

我会假设Sequelize会将整数放入我的身份或定义数据库表来自行完成.显然不是?我在这里缺少什么来确保id自动递增和填充?

非常感谢.

auto-increment node.js sequelize.js postgresql-9.1

33
推荐指数
3
解决办法
4万
查看次数

重置Microsoft SQL Server 2008 R2中的自动增量

我创建了一个自动增量的主键.

  • 我添加了两行: ID=1, ID=2
  • 我删除了这两行.
  • 我添加了一个新行,但新行的ID是: ID=3

如何将自动增量重置或重启为1?

auto-increment identity-column sql-server-2008-r2

32
推荐指数
2
解决办法
7万
查看次数

如何更改MySQL中的自动增量计数器?

我有一个ID字段,它是我的主键,只是一个int字段.

我有不到300行,但现在每次有人注册ID auto auto inc输入真的很高,如11800089,11800090等....有没有办法让它回来下来所以它可以按照订单(310,311,312) ).

谢谢!

mysql auto-increment

30
推荐指数
1
解决办法
4万
查看次数

如何避免获取此列错误列错误列名称列错误?

如何避免获取此MySQL错误列topic_id的列说明符不正确

MySQL错误......

#1063 - Incorrect column specifier for column 'topic_id'
Run Code Online (Sandbox Code Playgroud)

SQL架构......

CREATE TABLE discussion_topics (
    topic_id char(36) NOT NULL AUTO_INCREMENT,
    project_id char(36) NOT NULL,
    topic_subject VARCHAR(255) NOT NULL,
    topic_content TEXT default NULL,
    date_created DATETIME NOT NULL,
    date_last_post DATETIME NOT NULL,
    created_by_user_id char(36) NOT NULL,
    last_post_user_id char(36) NOT NULL,
    posts_count char(36) default NULL,
    PRIMARY KEY (topic_id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
Run Code Online (Sandbox Code Playgroud)

mysql sql ddl auto-increment

30
推荐指数
2
解决办法
8万
查看次数

使用NetBeans IDE在Java DB中创建自动增量密钥

我来自MySQL世界,请帮忙.

是否可以在JavaDB中从NetBeans IDE创建自动增量密钥?

您是否使用了一些更高级的数据库客户端?

谢谢.

netbeans auto-increment javadb

29
推荐指数
3
解决办法
12万
查看次数