php - 修改请求SQL

标签 php mysql excel

我有一个 SQL 表,我从 Excel 文件中填充它。问题是很多字段都是重复的。例如:

FOURNITURE      MFC       SERIE  
FOURNITURE      MFC       SERIE 
FOURNITURE      MFC       SERIE 

在我的表格中,我只找到一行。其余的都跳了起来。但是,我需要获取所有行。

我的要求是:

if ($articleid == 'DIEPRESTATION' || $articleid == 'DIEDIVBIEN' ||$articleid =='DIEDIVERS')
{
    if(!($this->_db->query("INSERT INTO `article` (`ID_Article`, `Designiation`, `Ident`, `ID_LRU`) VALUES ('".$articleid."', '".$designation."', '".$ident."', '".$IdLRU."');")))
{   
        if ($LRU != 'new')
        {
          return $this->_db->query(" UPDATE  `FLOOSE`.`article` SET  `ID_LRU` =  
          '".$IdLRU."' WHERE  `article`.`ID_Article` =  '".$articleid."' AND  
            `article`.`Designiation` =  '".$designation."' AND  
             `article`.`Ident` =  '".$ident."' LIMIT 1 ;");
        } 
        else {
                return false;
            }
        } else{
            return TRUE;
        }
    }

我认为我对两个表列有唯一的键约束。 screen sheet of the structure of my table

我如何更改它或进行测试以恢复所有线路?我删除唯一键约束? 谢谢。

最佳答案

是的,您的列确实有唯一的约束。更重要的是,ID_ArticleDesigniation 的组合是您的主键,根据定义它也是唯一的。

你应该

  1. 删除该主键:ALTER TABLE 文章 DROP PRIMARY KEY;
  2. 添加另一个字段(将其命名为 id 以遵守约定),并将其设置为自动增量主键:ALTER TABLE Article ADD id INT PRIMARY KEY AUTO_INCRMENT;

关于php - 修改请求SQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44134555/

相关文章:

PHP 通知 : Array to string conversion only on PHP 7

php - DOMXPath/PHP - 仅在特定出现后获取值

php - 需要帮助在 WordPress 中将 MySQL 转换为 MySQLI

mysql - SQL查询根据其他表中的记录数获取结果

python - 运行 Python 程序时出错 : com_error: (-2147023174, 'The RPC server is unavailable.' , None, None)

带有 proxy_wsTunnel 的 SSL 上的 PHP websocket - Apache

MySQL 存储过程 - 输出值时出现问题

php - 如何在 php 中执行搜索?

C# WPF - 将 SQLite 数据库复制到 Excel

excel - 从下拉列表中选择一个选项 excel vba 抓取