Bagaimana untuk mencipta jadual dalam mysql dan tetapkan id kunci utama jadual untuk meningkat daripada 1

王林
Lepaskan: 2023-05-30 12:03:48
ke hadapan
5537 orang telah melayarinya

1. Penerangan masalah

Apabila kami sedang mengusahakan projek dan mencipta jadual pengguna, bagaimanakah kita boleh membuat id kunci utama jadual meningkat daripada 0? Saya mencari banyak penyelesaian dalam talian dan akhirnya menemui penyelesaian yang pasti akan dilaksanakan dan berkesan. Seterusnya, kami akan memperkenalkan kaedah pelaksanaan

2. Penyelesaian

1. Langkah-langkah pelaksanaan

(1) Buat jadual baharu dan nyatakan peraturan kenaikan automatik (jika jadual sudah wujud , hanya padamkannya dan buat semula)

(2) Masukkan data jadual dengan id yang ditentukan sebagai 1 ke dalam pangkalan data

(3) Masukkan data jadual lain tanpa menyatakan kandungan id Jadual data, biarkan id jadual meningkat secara automatik

(4) Apabila menggunakan mybatisPlus untuk mencipta dan menjana kelas entiti, nyatakan peraturan kenaikan id kelas entiti sebagai peraturan kenaikan pangkalan data sahaja

2. Demonstrasi

1 Cipta jadual pengguna baharu dan nyatakan peraturan kenaikan automatik (jika jadual itu sudah wujud, padamkannya dan buat semula)

AUTO_INCREMENT=1. , hanya tambah peraturan seterusnya Id rekod jadual hanya meningkat sebanyak 1

create table if not exists `sys_user`
(
`id` bigint(20)  not null auto_increment PRIMARY KEY comment '主键' ,
`opend_id` varchar(256) DEFAULT null comment '微信用户唯一id',
`account_number` varchar(256) DEFAULT null comment'账号',
`username` varchar(256) not null DEFAULT '' comment '用户名',
`password` varchar(256)  comment '密码',
`nick_name` varchar(256) DEFAULT null comment '昵称',
`gender` varchar(25) DEFAULT null comment '性别',
`phone` varchar(256) DEFAULT null comment '手机号',
`role` varchar(10) default '0' not null comment '角色,0为普通用户,1为会员',
`age` varchar(256) not null DEFAULT'110'comment '年龄',
`user_status` varchar(25) default '0' not null comment '状态',
`update_time` datetime  not NULL DEFAULT CURRENT_TIMESTAMP comment '更新时间',
`create_time` datetime  not NULL DEFAULT CURRENT_TIMESTAMP comment '创建时间',
`is_deleted` tinyint default 0 not null comment '是否删除(0-未删, 1-已删)',
`email` varchar(256) DEFAULT null comment '邮箱',
`avatar` varchar(256) not null DEFAULT 'https://thirdwx.qlogo.cn/mmopen/vi_32/POgEwh5mIHO4nibH0KlMECNjjGxQUq24ZEaG
T4poC6icRiccVGKSyXwibcPq4BWmiaIGuG1icwxaQX6grC9VemZoJ8rg/132' comment '头像图片',
`city` varchar(50) DEFAULT '北京' comment '城市',
`province` varchar(50) DEFAULT null comment '省份',
`country` varchar(50) comment '国家'
 
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 comment '用户表信息';
Salin selepas log masuk

2 Masukkan data jadual dengan id yang ditetapkan 1 ke dalam pangkalan data

insert into sys_user values(1,'微信用户唯一id','账号','用户名','mima',
'昵称','xb','sjh','js','nl','0',CURRENT_TIMESTAMP,CURRENT_TIMESTAMP,
0,'邮箱','头像图片','城市','省份','国家')
Salin selepas log masuk

3 menyatakan kandungan id. Biarkan id jadual meningkat secara automatik

insert into sys_user(username,password,country) values('dscdc','8979777','中国');
Salin selepas log masuk

Selepas tiga langkah ini, kami membuka navicat untuk melihat rekod dalam jadual sys_user dalam pangkalan data

Bagaimana untuk mencipta jadual dalam mysql dan tetapkan id kunci utama jadual untuk meningkat daripada 1

Dapat dilihat, ID jadual yang dijana telah ditambah mengikut peraturan hanya meningkat sebanyak 1.

Akhir sekali, kami hanya perlu menambah anotasi pada medan id kelas entiti Java, dengan menetapkan bahawa apabila menambah jadual baharu, mybatisplus hanya boleh meningkatkan id mengikut satu-satunya peraturan peningkatan reka bentuk jadual pangkalan data . Anotasi ialah @TableId(value ="id",type = IdType.AUTO)

@TableId anotasi mybatis-plus

@TableId(value="xxx", type = IdType.xxx):

"value ": Tetapkan nilai medan pangkalan data

"type": Tetapkan jenis kunci primer Jika kunci primer pangkalan data ditetapkan kepada auto-increment, adalah disyorkan untuk menggunakan "AUTO"

@TableId(value ="id",type = IdType.AUTO)
Salin selepas log masuk

Kod Java lengkap kelas entiti diberikan di bawah Pada ketika ini kami juga telah melaksanakan fungsi mencipta id jadual yang boleh ditambah mengikut peraturan kenaikan automatik

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("sys_user")
public class SysUser  {
 
 
//  type = IdType.AUTO id按照数据库里设置的只增规则自己增加
    @TableId(value ="id",type = IdType.AUTO)
    private Long id;
    //用户名
    private String username;
    //账号
    private String accountNumber;
    //密码
    private String password;
    //昵称
    private String nickName;
    //手机号
    private String phone;
    //角色
    private String role;
    //年龄
    private String age;
    //状态
    private String userStatus;
    //更新时间
    private Date updateTime;
    //创建时间
    private Date createTime;
    //是否删除(0-未删, 1-已删)
    private Integer isDeleted;
    //邮箱
    private String email;
    //头像图片
    private String avatar;
    
    private String gender;
    
    private String city;
    
    private String province;
    
    private String country;
 
    private String opendId;
 
}
Salin selepas log masuk
.

Atas ialah kandungan terperinci Bagaimana untuk mencipta jadual dalam mysql dan tetapkan id kunci utama jadual untuk meningkat daripada 1. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan