sql >> データベース >  >> RDS >> Mysql

MySQLでの続編によるIDの自動インクリメント

    idを送信していないことを確認する必要があります キーです。

    簡単な最小限のテストを実行しましたが、うまく機能しているようです:

    var Sequelize = require('sequelize');
    var sequelize = new Sequelize('cake3', 'root', 'root', {
        define: {
            timestamps: false
        },
    });
    var User = sequelize.define('user1', {        
            id: {
                type: Sequelize.INTEGER,
                autoIncrement: true,
                primaryKey: true
            },
            name: {
                type: Sequelize.STRING
            }
    });
    
    sequelize.transaction().then(function(t) {
        User.create({name:'test'}, {
            transaction: t
        }).then(function() {
            t.commit();
        }).catch(function(error) {
            console.log(error);
            t.rollback();
        });
    });
    

    テーブルダンプ:

    CREATE TABLE `user1s` (
      `id` int(11) NOT NULL,
      `name` varchar(20) NOT NULL
    ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
    ALTER TABLE `user1s`
      ADD PRIMARY KEY (`id`);
    ALTER TABLE `user1s`
      MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=1;
    


    1. MYSQLトリガー:JSON_SEARCH整数のjson配列の整数値

    2. 私のmysqlステートメントを最適化する! --RAND()が遅すぎる

    3. ADO.NETがT-SQLストアドプロシージャを呼び出すと、SqlTimeoutExceptionが発生します

    4. MySQLで文字列のビット数を取得する方法– BIT_LENGTH()