我有一个预订系统,每当用户点击“新预订”时我必须生成一个新的id,这个id被传递到隐藏的输入,因为它们稍后在链接到预留的其他SQL表中使用表。所以问题中的表格是存款,夜晚等等。
我首先要做的是取列id的最大值,然后加1。问题是,当使用它的多个计算机(人)时,将生成相同的id。在填写完所有信息之前,不会将id插入数据库。
然后我做的是每次用户点击“创建新预订”按钮时,我会将该ID存储在临时数据库中,并获取此表的maxvalue以生成另一个id。这适用于2/3。
您是否知道每次创建预订时获取唯一身份证的最佳方式是什么?
我不是要求代码,只是更好的逻辑。
答案 0 :(得分:4)
将列ID设为自动增量,每次用户点击新预订时,都会不断提供新ID auto increment
上面的链接将告诉你如何做到这一点.... 关于夜晚和预订表,您可以复制夜班表中的数据,并使用插入选择语句insert into
将其添加到预订表中上面的链接可以帮助您实现这一目标。
答案 1 :(得分:0)
我在其他地方看到的一个想法是根据当前日期时间(最好精确到毫秒)和创建记录的计算机/用户帐户唯一的字段创建一个数字。
现在,“基于”意味着您可以自定义此类功能。
答案 2 :(得分:0)
更好的方法是使用SQL自动增量。您不必在表单中发送“id”。当您发送表单时,只需插入您收到的数据:MySQL将自动插入“id”中的正确值。如果你需要取回这个id,你可以使用SELECT语句。
答案 3 :(得分:0)
您还可以在下方观看此视频,其中显示了如何创建表格并将字段添加为自动增量: Auto increment video