MySql Error Code 1136 Column Count Doesnt Match Value Count At Row 1

user3529435 picture user3529435 · Apr 14, 2014 · Viewed 7.3k times · Source

Hi I'm almost done with this table but I ran into a problem I can't solve.

I keep getting error 1136 which is Column doesn't match value count for row 1 which is VisitID so it's a datatype problem but I cant figure it out.

The code I executed is the visit table code which is below:

Create Schema Visit;


create table roomtableS(
RoomID char (2)     not null,
RoomNum char (2)    not null,
Charge integer not null,
CONSTRAINT RoomTable_PK Primary Key(RoomID));


Insert into roomtableS values
('01','1A',125.00),
('02','1A',150.00),
('03','1A',100.00),
('04','1A',200.00),
('05','2B',150.00),
('06','2B',125.00),
('07','3C',200.00),
('08','3C',125.00),
('09','3C',100.00);





SELECT * FROM ROOMTABLES;


create table PATIENT(
PatientID    char(5)    not null, 
PatientName  Char(25) not null, 
PatientEmail     Char(30) null,
PatientPhoneNumber Char(10) null,
PatientAddress    Char(100) null,
constraint PATIENT_PK Primary key(PatientID));

insert PATIENT values
('P1', 'Bruce Willis', '[email protected]', '2022223333', '1111 Cosmic dr'),
('P2', 'Demi Moore', '[email protected]', '2021113333', '1112 Cosmic dr'),
('P3', 'Andre Agassi', '[email protected]', '2023333333', '1113 Cosmic dr'),
('P4', 'Jet Lee', '[email protected]', '2023334444', '1114 Chinatown ct'),
('P5', 'Jim Carey', '[email protected]', '2023335555', '1115 United dr'),
('P6', 'Bruce Lee', '[email protected]', '2023336666', '1115 Chinatown ct');

select* From PATIENT;




Create table SERVICETable(
ServiceID       Char (5) not null,
ServiceTreatment Char(25) not null,
ServiceCost     numeric  not null,
constraint  SERVICE_PK Primary Key(ServiceID));

insert SERVICETable values
('S1','Sore throat', 10.00),
('S2', 'Fever', 15.00),
('S3', 'Headache', 10.00),
('S4', 'Blood pressusre', 20.00),
('S5', 'Yearly checkup', 30.00),
('S6', 'Common cold', 15.00);

select* from SERVICETable;


Create Table doctortable(
DocID char (5)   NOT NULL,
DoctorFirstName char(15) Not NULL,
DoctorLastName char (15) Not Null,
DoctorPhone char (15) Not Null,
CONSTRAINT DoctorTable_PK Primary Key(DocID));


INSERT INTO doctortable values
('D1','Tim','Edward','555-123-4567'),
('D2','Andy','Smith','888-777-6666'),
('D3','John','Smith','222-321-7654');






Select * From doctortable;



Create Table visit(
VisitID char (2) not Null,
PatientID Char (5) not null,
DocID Char (5) not null,
ServiceID Char (5)  not Null,
RoomID char (2) not Null,
Visit date  not null,
CONSTRAINT   VISIT_PK    PRIMARY KEY (VisitID));



Alter table Visit 
add foreign key (PatientID)
references Patient (PatientID);


Alter table Visit 
add foreign key (DocID)
references doctortable (DocID);

Alter table Visit 
add foreign key (ServiceID)
references ServiceTable (ServiceID);

Alter table Visit 
add foreign key (RoomID)
references roomtableS (RoomID);


Insert into Visit (VisitID,RoomID,ServiceID,PatientID,Visit) values
**('1','P1','D1','S1','05','2014-01-03'),
('2','P2','D2','S2','01','2014-01-10'),
('3','P3','D1','S3','02','2014-01-10'),
('4','P4','D2','S4','07','2014-01-15'),
('5','P1','D3','S2','08','2014-01-10'),
('6','P5','D3','S5','03','2014-02-02'),
('7','P4','D1','S6','06','2014-01-10'),
('8','P3','D2','S5','03','2014-02-03'),
('9','P2','D3','S6','01','2014-02-04'),
('10','P3','D1','S2','06','2014-02-04'),
('11','P5','D2','S4','04','2014-02-05'),
('12','P4','D1','S5','09','2014-02-06');**
Select * from Visit;

Answer

Daniel Qiu picture Daniel Qiu · Apr 14, 2014

There are two problems with the last insertion: the field DocId is missing but the values are there; the order between the fields and values don't match.

It should be like:

Insert into Visit (VisitID,PatientID, DocID, ServiceID, RoomID,Visit) values
('1','P1','D1','S1','05','2014-01-03'),
('2','P2','D2','S2','01','2014-01-10'),
('3','P3','D1','S3','02','2014-01-10'),
('4','P4','D2','S4','07','2014-01-15'),
('5','P1','D3','S2','08','2014-01-10'),
('6','P5','D3','S5','03','2014-02-02'),
('7','P4','D1','S6','06','2014-01-10'),
('8','P3','D2','S5','03','2014-02-03'),
('9','P2','D3','S6','01','2014-02-04'),
('10','P3','D1','S2','06','2014-02-04'),
('11','P5','D2','S4','04','2014-02-05'),
('12','P4','D1','S5','09','2014-02-06');

You could find the complete working code at sqlfiddle.