我正在尝试将默认用户名设置为像微信一样有 wxid_1234 这样的东西所以我们可以在我们的 mysql 表中设置默认用户名吗?
有一个名为“用户名”的表,有两列:“用户名”和“电话”。由于“用户名”需要设置为 foo_123 之类的值,并且可以使用 foo_124、foo_125 等自动增加。之后可以更改。
那么可以这样设置用户名吗?如果不是,另一种方法是什么。
考虑以下方法:
id
列设置为int
和 AUTO_INCREMENTfoo
orfoo_
然后像这样连接id
和username
:(使用PHP)
$username . "_" . $id
或者
$username . $id
取决于您要使用的方法。
这将分别产生foo_1
foo_2
foo_3
等。从那时起,数字将自动增加。
是的,您可以这样做,但是这将是两个查询,并且您必须将自动递增user_id
作为另一列:
$sql = $dbo->prepare('INSERT INTO users(username, phone) values("temp", ?)');
$sql->execute(array($phone_number));
$id = $dbo->lastInsertId();
$sql = $dbo->prepare("UPDATE users SET username=? WHERE id=?");
$username = "foo_" . $id;
$sql->execute(array($username, $id));