自动递增phpmyadmin

| 我有一个使用PHP,MySQL和phpMyAdmin的现有数据库。 当用户成为我的网站的会员时,我需要系统使用五位数的数字为他们创建一个唯一的会员号。例如83773。我想这就像生成一个随机密码,只不过我只想为会员提供数字。该ID号对于每个成员必须是唯一的。 是否可以在用户表中将主键设置为auto_increment并将其设置为从10000开始,然后在每次成员注册时自动递增? 另外,主键ID号是否有最大数目? 这是将主键ID号码用作会员号码的可靠且安全的方法吗?     
已邀请:
有一些步骤可以使列自动增加。我猜phpMyAdmin版本是3.5.5,但不确定。 单击表>结构选项卡>在操作下 点击主要(设置为主要), 在ppoup窗口上单击“更改”,向左滚动并检查A_I。还要确保已为“默认”选择了“无”     
在phpMyAdmin中,导航到有问题的表,然后单击\“ Operations \”选项卡。在“表选项”下方的左侧,将允许您设置当前的AUTO_INCREMENT值。     
只需运行一个简单的MySQL查询并将自动增量号设置为所需的值即可。
ALTER TABLE `table_name` AUTO_INCREMENT=10000
就最大数目而言,据我所知,没有上限,也没有任何办法来限制这一数目。 设置ID号作为主键是一种非常安全的惯例,通常会自动将int递增。还有一些替代方法,例如使用PHP为您生成特定格式的会员编号,然后在插入之前检查该编号是否存在,但是对于我个人而言,我会使用主要ID auto_inc值。     
在表格的“结构”标签中 单击您想要的变量的铅笔auto_increment 在“额外”标签下,选择“自动递增” 然后转到表格的“操作”标签 在“表格选项”下->自动递增类型-> 10000     
在phpMyAdmin中,如果您在表中将字段设置为自动递增,然后插入一行并将该字段的值设置为10000,它将从那里继续。     
@AmitKB,您的程序正确。虽然这个错误 查询错误:#1075-表定义不正确;只能有一个自动列,并且必须将其定义为键 可以通过以下方法解决:首先将字段标记为键(使用带有标签primary的键图标),除非您拥有其他键,否则它可能无法工作。     
您无法设置最大值(除了选择不能容纳大数字的数据类型外,没有其他类型具有您要的限制)。您可以在插入后使用LAST_INSERT_ID()进行检查,以获取新创建的成员的ID,如果太大,请在您的应用程序代码中进行处理(例如,删除并拒绝该成员)。 为什么要上限?     
这是由于
wp_terms
wp_termmeta
wp_term_taxonomy
表的所有ID都未设置为
AUTO_INCREMENT
为此,请转到phpmyadmin,在关注数据库上单击“ѭ”表,在“结构”选项卡上单击,在右侧将看到一个名为“ѭ6”的选项卡,进行检查并保存(在这种情况下,您仅对第一个选项执行此操作
wp_term
,您只为
term_id
做)。 对
wp_termmeta
wp_term_taxonomy
执行相同操作,即可解决此问题。     

要回复问题请先登录注册