mysql存储过程列错误

mysql存储过程列错误,mysql,database,stored-procedures,Mysql,Database,Stored Procedures,我收到以下错误。但是我没有在存储过程中输入count,为什么它会给出这个错误呢 CALL updateproposalStatus(1,5) Error Code: 1136. Column count doesn't match value count at row 1 存储过程: CREATE DEFINER=`root`@`localhost` PROCEDURE `updateProposalStatus`(IN decision INT, IN x INT) BEGIN D

我收到以下错误。但是我没有在存储过程中输入count,为什么它会给出这个错误呢

  CALL updateproposalStatus(1,5)    Error Code: 1136. Column count doesn't match value count at row 1
存储过程:

CREATE DEFINER=`root`@`localhost` PROCEDURE `updateProposalStatus`(IN decision INT, IN x INT)
BEGIN
DECLARE adv_id varchar(30);
DECLARE std_id varchar(30);
DECLARE topic varchar(255);

select
 a.id INTO adv_id
 from
 rp_proposal p
 inner join rp_adviser a on p.rp_adviser_id = a.id
 where p.proposal_id=x;

 select
 s.id INTO std_id
 from
 rp_proposal p
 inner join rp_student s on p.rp_student_id = s.id
 where p.proposal_id=x;

 select
 p.title INTO topic
 from
 rp_proposal p
 where p.proposal_id=x;

UPDATE rp_proposal_status
SET state_rp_controller =decision
WHERE rp_proposal_id = x;

IF decision = 1 THEN
INSERT INTO rp_indpstudy VALUES (topic,adv_id,std_id);
END IF;
END
它抱怨的是列计数(列数),而不是名为
count
的列


最可能的罪魁祸首是结尾的
insert
语句-确保它与
rp\u indpstudy
的模式一致。

insert语句是罪魁祸首,因为我离开了主键id字段。但是我将其设置为
自动递增
,那么为什么会出现错误呢?我通过
插入rp\u indpstudy(name,rp\u advisor\u id,rp\u student\u id)值(topic,adv\u id,std\u id)修复了错误之前,我没有指定列名