【发布时间】:2013-01-10 15:46:05
【问题描述】:
我有 3 张桌子。
第一个表是 USERS, 第二个表是产品密钥, 第三个表是 PRODUCT KEY 和 USER 的连接。
看起来像这样:
CREATE TABLE product_keys
(
id INT auto_increment PRIMARY KEY,
product_key VARCHAR(255)
);
CREATE TABLE users
(
id INT auto_increment PRIMARY KEY,
username VARCHAR(50),
email VARCHAR(50)
);
CREATE TABLE user_keys
(
id INT auto_increment PRIMARY KEY,
product_key VARCHAR(255) UNIQUE,
user_id INT
);
示例:产品密钥表有 70 个密钥。 如果第一个用户注册,他将收到一封包含产品密钥的电子邮件。然后将第一个用户 ID 和该产品密钥保存到第三个表中。
问题是如何使已发送的产品密钥不再发送,而是在第二个用户注册时发送下一个。
【问题讨论】:
-
嗨,yafa,编辑了你的问题,因为你使用了不正确的术语“数据库”而不是“表”,这就是你的意思
-
您如何制作产品密钥? uniqid() 每次生成不同的字符串
-
不,那些产品密钥将由某人提供,我必须将它们保存到数据库表密钥中。
-
@YafaSu 我不确定你想要达到什么目的。你想要每个用户唯一的 product_key 吗?您的
users表具有product_keys并且表product_keys具有用户详细信息是否有特定原因。还是错字 -
@YafaSu 您可以通过在
users表本身中为product_key添加唯一键列来处理此问题。这样你的应用程序会更快。您需要维护的表格更少