使用多个唯一键将数据插入Mysql

时间:2013-06-22 05:48:35

标签: php mysql

我的MYSQL查询

$db->query("INSERT INTO customers (first_name,last_name,address,city,state,zip,phone,dnc,user_id)
 VALUES ('$firstname','$lastname','$address','$city','$state','$zip','$phone','$dnc','$userid') ON DUPLICATE KEY UPDATE phone=phone");

我正在做的是将客户信息放入数据库。我想确保每个客户都插入一次数据库。此查询通过将电话号码用作唯一键来实现此目的。现在我遇到的问题是我希望能够在数据库中拥有重复的客户,但每个用户没有重复的客户。

在我的应用程序中,多个用户拥有他们已添加的客户,但他们无法看到其他用户添加的客户。我希望只有当user_id和手机已经在数据库中时才会插入查询。我尝试添加

 phone=phone AND user_id=$userid 

到查询结尾但未能使其正常工作。 任何帮助将不胜感激,谢谢。

1 个答案:

答案 0 :(得分:0)

使用此查询在两个字段上方添加UNIQUE索引:

ALTER TABLE customers ADD UNIQUE `unique_customer` ( user_id , phone)