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

MySQLテーブルに値を挿入するときに自動インクリメント主キーの属性をオーバーライドするにはどうすればよいですか?

    auto_incrementを無効にする必要はありません 特徴。テーブルに行を挿入し、その行に主キー値を指定すると、必要なIDがデータベースに保存されます。 auto_increment 主キーフィールドを省略した場合にのみ使用されます。

    編集:私はその例をあげるかもしれないと思った:

    mysql> describe test;
    +-------+------------------+------+-----+---------+----------------+
    | Field | Type             | Null | Key | Default | Extra          |
    +-------+------------------+------+-----+---------+----------------+
    | id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
    | value | varchar(45)      | NO   |     | NULL    |                |
    +-------+------------------+------+-----+---------+----------------+
    2 rows in set (0.02 sec)
    
    mysql> insert into test (value) values ('row 1');
    Query OK, 1 row affected (0.06 sec)
    
    mysql> select * from test;
    +----+-------+
    | id | value |
    +----+-------+
    |  1 | row 1 |
    +----+-------+
    1 row in set (0.00 sec)
    
    mysql> insert into test values (15, 'row 2');
    Query OK, 1 row affected (0.03 sec)
    
    mysql> select * from test;
    +----+-------+
    | id | value |
    +----+-------+
    |  1 | row 1 |
    | 15 | row 2 |
    +----+-------+
    2 rows in set (0.00 sec)
    

    編集2

    mysql> insert into test (id, value) values (3, 'row 3');
    Query OK, 1 row affected (0.00 sec)
    
    mysql> select * from test;
    +----+-------+
    | id | value |
    +----+-------+
    |  1 | row 1 |
    | 15 | row 2 |
    |  3 | row 3 |
    +----+-------+
    3 rows in set (0.00 sec)
    


    1. MySQLの「groupby」の「最後の」行を返す

    2. Laravelでクエリ実行時間をテストする

    3. 非表示の機能:ファイル間でアクセスオブジェクトをドラッグアンドドロップします

    4. 左アウタージョインを使用するのはいつですか?