标签: auto-increment

在不使用触发器的情况下在Oracle中自动增量

除了使用触发器之外,在oracle中实现自动增量的其他方法是什么?

oracle triggers sequences auto-increment

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

你能在一个语句中访问MySQL中的自动增量值吗?

我有一个MySQL数据库,其中包含一个用户表.表的主键是'userid',它被设置为自动增量字段.

我想要做的是当我在表中插入一个新用户时,使用自动增量在另一个字段'defaultidass'中的'userid'字段中创建的相同值.

例如

我想要这样的声明:

INSERT INTO users ('username','default_assignment') VALUES ('barry', value_of_auto_increment_field())
Run Code Online (Sandbox Code Playgroud)

所以我创建用户'Barry','userid'生成为16(例如),但我也希望'default_assignment'具有相同的值16.

请问有什么方法可以实现吗?

谢谢!

更新:

谢谢你的回复.default_assignment字段不是多余的.default_assigment可以引用users表中的任何用户.在创建用户时,我已经有一个表单允许选择另一个用户作为default_assignment,但是有些情况需要将它设置为同一个用户,因此我的问题.

更新:

好的,我已经尝试了更新触发器建议,但仍然无法使其工作.这是我创建的触发器:

CREATE TRIGGER default_assignment_self BEFORE INSERT ON `users`  
FOR EACH ROW BEGIN
SET NEW.default_assignment = NEW.userid;
END;
Run Code Online (Sandbox Code Playgroud)

但是,插入新用户时,default_assignment始终设置为0.

如果我手动设置用户ID,则default_assignment将设置为userid.

因此,在触发生效后,自动分配生成过程显然会发生.

mysql sql insert auto-increment

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

SQLite自动增加非主键字段

是否可以让非主键在每次插入时自动递增?

例如,我想要一个日志,其中每个日志条目都有一个主键(供内部使用)和一个修订号(我希望自动递增的INT值).

作为一种解决方法,这可以通过序列完成,但我相信SQLite不支持序列.

sql sqlite auto-increment

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

在MySQL中使用自动增量定义复合键

场景:

我有一个引用两个外键的表,并且对于这些外键的每个唯一组合,都有自己的auto_increment列.我需要实现一个复合键,它将使用这三个组合(一个外键和一个auto_increment列,另一个列具有非唯一值)帮助将行标识为唯一

表:

CREATE  TABLE `issue_log` (
`sr_no` INT NOT NULL AUTO_INCREMENT ,
  `app_id` INT NOT NULL ,
  `test_id` INT NOT NULL ,
  `issue_name` VARCHAR(255) NOT NULL ,
primary key (app_id, test_id,sr_no)
);
Run Code Online (Sandbox Code Playgroud)

当然,我的查询必定有问题,因为抛出的错误是:

错误1075:表定义不正确; 只能有一个自动列,必须将其定义为键

我想要实现的目标:

我有一个Application Table(以app_id作为主键),每个Application都有一组要解决的问题,每个Application都有多个测试(所以test_id col)sr_no col应该为唯一的app_id和test_id递增.

即表中的数据应如下所示:

在此输入图像描述

数据库引擎是InnoDB.我希望尽可能简单地实现这一点(即如果可能的话,避免使用触发器/程序 - 这是针对其他问题的类似情况而建议的).

mysql innodb composite-key auto-increment

22
推荐指数
3
解决办法
2万
查看次数

MongoDB中的自动增量以存储唯一用户ID的序列

我正在建立一个分析系统,API调用将提供唯一的用户ID,但它不是按顺序而且太稀疏.

我需要为每个唯一用户ID提供一个自动增量ID,以在bitarray/bitset中标记分析数据点.因此,第一个用户遇到的对应于比特阵列的第一个比特,第二个用户将是比特阵列中的第二个比特,等等.

那么在MongoDB中生成增量唯一用户ID有一种可靠而快速的方法吗?

uniqueidentifier auto-increment bitarray bitset mongodb

21
推荐指数
3
解决办法
9万
查看次数

查询重新索引MySQL数据库的主键

我在MySQL中有一个包含主键列的表.

让我们说:

ID | Value
1  | One
2  | Two
6  | Three
8  | Four
9  | Five
Run Code Online (Sandbox Code Playgroud)

我如何得到它:

ID | Value
1  | One
2  | Two
3  | Three
4  | Four
5  | Five
Run Code Online (Sandbox Code Playgroud)

没有其他表格.只是一个.我只是想让ID成为一个合适的系列.

有什么建议?? 一个查询也许.. :)

mysql sql auto-increment

20
推荐指数
2
解决办法
1万
查看次数

SQL - 检查列是否自动递增

我正在尝试运行查询以检查列是否自动递增.我可以检查类型,默认值,它是否可以为空等等,但我无法弄清楚如何自动递增测试.这是我如何测试其他东西:

SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'my_table'
AND COLUMN_NAME = 'my_column'
AND DATA_TYPE = 'int'
AND COLUMN_DEFAULT IS NULL
AND IS_NULLABLE = 'NO'
--AND AUTO_INCREMENTS = 'YES'
Run Code Online (Sandbox Code Playgroud)

不幸的是,没有AUTO_INCREMENTS可比较的列.那么如何测试列自动递增?

mysql sql sql-server auto-increment

20
推荐指数
2
解决办法
3万
查看次数

在Core数据iOS中设置自动增量

我正在使用Core Data,并希望将auto_increment ID设置为唯一的字段之一.是否可以使用核心数据在iOS中设置auto_increment?任何人都可以帮我一个如何实现这个的小例子?

下面是我在数据库中插入记录的代码.在第一个字段"id"中,我想将其设置为auto_increment而不是手动插入它.

- (NSManagedObjectContext *)managedObjectContext {
    NSManagedObjectContext *context = nil;
    id delegate = [[UIApplication sharedApplication] delegate];
    if ([delegate performSelector:@selector(managedObjectContext)]) {
        context = [delegate managedObjectContext];
    }
    return context;
}

NSManagedObjectContext *context = [self managedObjectContext];

// Create a new managed object
NSManagedObject *newObj = [NSEntityDescription insertNewObjectForEntityForName:@"Users" inManagedObjectContext:context];

[newObj setValue:[NSNumber numberWithInt:userId] forKey:@"id"];
[newObj setValue:theFileName forKey:@"Name"];
Run Code Online (Sandbox Code Playgroud)

core-data auto-increment nsmanagedobject ios xcode5

20
推荐指数
1
解决办法
2万
查看次数

猫鼬自动增量

根据这篇mongodb文章,可以自动增加一个字段,我想使用计数器收集方式.

这个例子的问题是我没有成千上万的人使用mongo控制台在数据库中键入数据.相反,我试图使用猫鼬.

所以我的架构看起来像这样:

var entitySchema = mongoose.Schema({
  testvalue:{type:String,default:function getNextSequence() {
        console.log('what is this:',mongoose);//this is mongoose
        var ret = db.counters.findAndModify({
                 query: { _id:'entityId' },
                 update: { $inc: { seq: 1 } },
                 new: true
               }
        );
        return ret.seq;
      }
    }
});
Run Code Online (Sandbox Code Playgroud)

我在同一个数据库中创建了计数器集合,并添加了一个_id为'entityId'的页面.从这里我不知道如何使用mongoose更新该页面并获得递增的数字.

计数器没有架构,我希望它保持这种方式,因为这实际上不是应用程序使用的实体.它只应在模式中用于自动增量字段.

javascript auto-increment mongoose mongodb

19
推荐指数
7
解决办法
6万
查看次数

如何在Room持久性库中使用复合主键时使主键自动递增?

我正在使用Room persistent library.我要求在一个表中添加两个主键,其中一个主键应该是自动增量.我不知道实现这一目的的确切语法.下面是我的Model类:

@Entity(tableName = "newsPapers", primaryKeys = 
{"news_paper_id","news_paper_name"})
public class SelectNewsModel {

private int news_paper_id;

@ColumnInfo(name = "image_url")
private String imageUrl;

@ColumnInfo(name = "news_paper_name")
private String newsPaperName;
}
Run Code Online (Sandbox Code Playgroud)

我想让"news_paper_id"自动递增.我该怎么做?

android auto-increment composite-primary-key android-room

19
推荐指数
2
解决办法
6518
查看次数