Codeigniter错误消息重复输入

时间:2013-11-30 23:41:29

标签: php codeigniter

我正在尝试实现Php Codeigniter模型函数,该函数可以计算左子项的数量和二叉树的正确子项数,但是我收到此消息错误:

  

错误号码:1062

     

密钥1的重复条目'4'INSERT INTO'mytable'(members_id,   members_usernamemembers_password,)文件名:   C:\的appserv \ WWW \应用\ SYSTEM \数据库\ DB_driver.php

     

行号:330

我使用此功能,我认为我有一些逻辑错误。

function count(){
 $query = $this->db->get('mytable');
foreach ($query->result() as $row) {
 if ($row->id > 1) {
  $Right_Child= $this->insert_to_right($row, $row->id);
  $Left_child = $this->insert_to_left($row, $row->id);
$count1=0;
    $count2=0;
if($Left_child!=NULL){

        for($count1;$count1<=10;$count1++)

            {
       $count1=$htis->Left_child->count();
            echo 'Left_child';

        }
        if($Right_Child!=NULL){
            for($count2;$count2<=10;$count2++){
            $count2= $this ->Right_Child->count();

            return $count2;
            echo 'Right_Child';
            if($count1==$count2){
                echo'tree';

            }

            }
        }
    }

        }

3 个答案:

答案 0 :(得分:0)

Amin Adha指出的是正确的。

将记录插入数据库时​​,请尝试省略记录的ID,或将其设置为NULL。

在这种情况下,ID字段似乎是&#34; members_id&#34;

您在某处插入时遇到问题。

答案 1 :(得分:0)

尝试将auto incrementamt添加到member_id

 ALTER TABLE mytable ADD members_id INT PRIMARY KEY AUTO_INCREMENT;

删除旧数据后再试一次。

答案 2 :(得分:0)

如果您将Integer用作 id ,请尝试将您的类型字段 member_id int -> PRIMARY更改为 varchar -> PRIMARY,并且不要在数据库上使用自动增量