首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >消除重复的日期MySQL

问消除重复的日期MySQL
EN

Stack Overflow用户
提问于 2011-05-19 14:55:23
回答 1查看 142关注 0票数 2

我正在创建一个产品数据库,并试图以正确的方式完成它。到目前为止,我是如何设置数据库的。

我的产品表只是一个产品is和营销描述。sku表将skuid与productid关联起来。一个产品有多个skus。Skus对于每个产品都是唯一的。这三个属性表关联一个属性值(即大小、权重、颜色等)。到sku id。

结果如下所示。

http://174.121.67.116/~aware/awarebk/product_sku_view.php?code=789

产品789具有与其相关的skus 17、24、25、29、30。第25、29和30行是我的问题。您可以看到,允许重复。此表在数据库中不存在。它是使用以下代码创建的。我希望每个sku id的属性组合都是唯一的。我是否可以通过前端验证来完成此操作?有没有办法在后台做到这一点?下面是我用来生成sku行的mysql代码。

代码语言:javascript
复制
$sidresult = mysql_query("SELECT sku.product_idproduct,
                                 sku.idsku, 
                                 amaterial.material, 
                                 amcolor.color, 
                                 atype.type
                            FROM sku sku
                 LEFT OUTER JOIN amaterial ON sku.idsku = amaterial.sku_idsku
                 LEFT OUTER JOIN amcolor ON sku.idsku = amcolor.sku_idsku
                 LEFT OUTER JOIN atype ON sku.idsku = atype.sku_idsku
                           WHERE sku.product_idproduct =$pid");

  if (mysql_num_rows($sidresult) > 0) {
      echo '
  <table border="1" cellspacing="0" cellpadding="5px">
    <tr>  
     <th>SKU ID</th>
    <th>Material</th>
    <th>Material Color</th>
    <th>Type</th>

    </tr>';
      while ($sidrow = mysql_fetch_array($sidresult)) {
          echo '<tr>';
          echo '<td>' . $sidrow['idsku'] . '</td>';
          echo '<td>' . $sidrow['material'] . '</td>';
          echo '<td>' . $sidrow['color'] . '</td>';
          echo '<td>' . $sidrow['type'] . '</td>';
          echo "</tr>";
      }
      // close table>
      echo "</table>";

同样,我的目标是确保使用skuid生成的属性行是唯一的,并且不能添加重复项。那么如何针对多个表中的重复项进行验证呢?

EN

回答 1

Stack Overflow用户

发布于 2011-05-19 17:54:30

您的后端验证代码应该根据产品ID检查用户输入的新SKU值-看起来您正在使用PHP,所以这个例程应该位于您处理SKU input form (add_product_sku_view.php)的位置。

接受用户的输入,运行SQL查询以查看是否返回任何现有SKU,如果组合已经存在,则通知用户。只有在他们输入了唯一的SKU详细信息后,您才能允许将记录插入您的SKU表中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6054902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档