I ask is possible to increase id number per new user in sqlite3 database using golang and xorm without cause async problem?
For example this is my database
sid int
username string
password string
Now the question is for example I have 5 user before that and last user sid is 5, so it is possible to increase sid number for user 6 without cause problem?
The main problem is this; In my method when new request received by server for register. Server check last sid from sqlite3 database. For example if last sid is 5 server increase this number with + 1 so our sid get 6 but when try save new user to sid 6 when server is busy and in same time another guy want register cause error to sid 6 already taken. I know this is not professional method and now try find solotion.
Don't let the server code generate the ID. Let the DB do this job. SQLite has the AUTOINCREMENT
keyword for this task.
Edit: But as the SQLite documentation cleary tells use, the use of INTEGER PRIMARY KEY
is recommended over AUTOINCREMENT
.