0

我是 Mysql 的新手,所以轻松一点。原谅在这方面缺乏知识。但是我到处搜索,这很愚蠢,我不能只找到这个简单的答案。尝试制作一个有趣的应用程序来推广页面,赚取积分,为 fbook blah blah 做 PPC 类型的广告......

我目前有一个包含用户数据的 {table1}。UID、fname、lname、添加日期

而 table2 用于提交广告的用户链接以返回页面,它只有来自 UID 的主要和 1 col 现在能够添加链接。使用主键,我想要用户名或 uid,但必须能够向现有主键添加更多内容,以便我可以调用用户和所有链接。我可以这样添加,但当然必须删除自己才能在表格中添加更多内容......

$query = "INSERT INTO {$table} VALUES ('{$userid}', '{$user_link}')";
mysql_query($query) or die('Error updating database');

然后,说他们稍后再添加一个

if new submission check existing then 
add new column to existing uid... link#2=http://

我错过了什么。甚至很难说出这个问题,这就是为什么我把它放在这里作为搜索结果的原因!帮助!

4

2 回答 2

2

您的表在 UID 上不能有数据库主键。根据定义,作为主键的 UID 必须是唯一的。所以要么你需要。

  • 一个组合键 UID & USER_LINK(ORACLE 思维)
  • 根本没有钥匙(它可以工作;但是你可以有重复的)
  • 为每条记录加 1 的通用 AutoNum 键(MSFT 思维)

当您说某物是主键时,您的意思是该值永远不会为空,并且它在表中始终是唯一的。你必须小心这个;你认为独特的东西,其实不是。

在这种情况下,UNIQUE 键是使用用户链接定义的,同一用户不需要具有相同的链接(对吗?),因此您可以在两者之间创建一个组合键。

于 2012-09-18T01:24:48.830 回答
1

删除PRIMARY KEYon table2,根据定义,它是唯一的。使用常规索引作为FOREIGN KEY返回 table11。

于 2012-09-18T01:23:54.850 回答