Boa tarde, estou com o seguinte erro: error 1136 : column count doesn't match value count at row 1
alguém poderia me ajudar?
CREATE DATABASE CURSORES;
USE CURSORES;
CREATE TABLE VENDEDORES (
IDVENDEDOR INT PRIMARY KEY AUTO_INCREMENT,
NOME VARCHAR(50),
JAN INT,
FEV INT,
MAR INT
);
INSERT INTO VENDEDORES VALUES(NULL,'MAFRA',32,242,574);
INSERT INTO VENDEDORES VALUES(NULL,'CLARA',2432,5665,5745);
INSERT INTO VENDEDORES VALUES(NULL,'JOÃO',3232,5667,5745);
INSERT INTO VENDEDORES VALUES(NULL,'LILIAN',4553,2434,5745);
INSERT INTO VENDEDORES VALUES(NULL,'ANTONIO',332,2334,7567);
INSERT INTO VENDEDORES VALUES(NULL,'GLORIA',3562,256,555);
SELECT NOME, (JAN+FEV+MAR) AS TOTAL FROM VENDEDORES;
SELECT NOME, (JAN+FEV+MAR) AS TOTAL, (JAN+FEV+MAR)/3 AS MEDIA FROM VENDEDORES;
CREATE TABLE VEND_TOTAL (
IDVENDEDOR INT PRIMARY KEY AUTO_INCREMENT,
NOME VARCHAR(50),
JAN INT,
FEV INT,
MAR INT,
TOTAL INT,
MEDIA INT
);
DELIMITER $
CREATE PROCEDURE INSEREDADOS()
BEGIN
DECLARE FIM INT DEFAULT 0;
DECLARE VAR1, VAR2, VAR3, VTOTAL, VMEDIA INT;
DECLARE VNOME VARCHAR(50);
DECLARE REG CURSOR FOR (
SELECT NOME, JAN, FEV, MAR FROM VENDEDORES
);
OPEN REG;
REPEAT
FETCH REG INTO VNOME, VAR1, VAR2, VAR3;
IF NOT FIM THEN
SET VTOTAL = VAR1 + VAR2 + VAR3;
SET VMEDIA = VTOTAL / 3;
INSERT INTO VEND_TOTAL VALUES(VNOME,VAR1,VAR2,VAR3);
END IF;
Pergunta
João Paulo Silva
Boa tarde, estou com o seguinte erro: error 1136 : column count doesn't match value count at row 1
alguém poderia me ajudar?
CREATE DATABASE CURSORES;
USE CURSORES;
CREATE TABLE VENDEDORES (
IDVENDEDOR INT PRIMARY KEY AUTO_INCREMENT,
NOME VARCHAR(50),
JAN INT,
FEV INT,
MAR INT
);
INSERT INTO VENDEDORES VALUES(NULL,'MAFRA',32,242,574);
INSERT INTO VENDEDORES VALUES(NULL,'CLARA',2432,5665,5745);
INSERT INTO VENDEDORES VALUES(NULL,'JOÃO',3232,5667,5745);
INSERT INTO VENDEDORES VALUES(NULL,'LILIAN',4553,2434,5745);
INSERT INTO VENDEDORES VALUES(NULL,'ANTONIO',332,2334,7567);
INSERT INTO VENDEDORES VALUES(NULL,'GLORIA',3562,256,555);
SELECT NOME, (JAN+FEV+MAR) AS TOTAL FROM VENDEDORES;
SELECT NOME, (JAN+FEV+MAR) AS TOTAL, (JAN+FEV+MAR)/3 AS MEDIA FROM VENDEDORES;
CREATE TABLE VEND_TOTAL (
IDVENDEDOR INT PRIMARY KEY AUTO_INCREMENT,
NOME VARCHAR(50),
JAN INT,
FEV INT,
MAR INT,
TOTAL INT,
MEDIA INT
);
DELIMITER $
CREATE PROCEDURE INSEREDADOS()
BEGIN
DECLARE FIM INT DEFAULT 0;
DECLARE VAR1, VAR2, VAR3, VTOTAL, VMEDIA INT;
DECLARE VNOME VARCHAR(50);
DECLARE REG CURSOR FOR (
SELECT NOME, JAN, FEV, MAR FROM VENDEDORES
);
OPEN REG;
REPEAT
FETCH REG INTO VNOME, VAR1, VAR2, VAR3;
IF NOT FIM THEN
SET VTOTAL = VAR1 + VAR2 + VAR3;
SET VMEDIA = VTOTAL / 3;
INSERT INTO VEND_TOTAL VALUES(VNOME,VAR1,VAR2,VAR3);
END IF;
UNTIL FIM END REPEAT;
CLOSE REG;
END
$
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.