Я создаю проект на платформе Struts.
Я получаю исключение от сервера при вставке данных в таблицу с помощью SQL, и я не могу найти решение. p> Ошибка следующая:
javax.servlet.ServletException: com.mysql. jdbc.Exceptions.jdbc4.MySQLSyntaxErrorException:
У вас есть ошибка в синтаксисе SQL; проверьте руководство
, соответствующее версии вашего сервера MySQL, чтобы узнать
правильный синтаксис для использования рядом с ',,,,,,,,'да','да',,,'admin')' на строка 1
Мой код, который генерирует ошибку, выглядит следующим образом:
CREATE TABLE IF NOT EXISTS `field_visit_details` (
`field_visit_id` int(11) NOT NULL auto_increment,
`visit_date` date NOT NULL,
`block` varchar(100) NOT NULL,
`village` varchar(100) NOT NULL,
`flw_category` varchar(45) NOT NULL,
`flw_name` varchar(100) NOT NULL,
`flw_contact_no` varchar(13) NOT NULL,
`aware_zinc` varchar(10) NOT NULL,
`aware_ors` varchar(10) NOT NULL,
`past_zinc` varchar(10) NOT NULL,
`past_ors` varchar(10) NOT NULL,
`qty_avail_zinc_ten` int(11) NOT NULL,
`qty_avail_zinc_twe` int(11) NOT NULL,
`qty_avail_zinc_syr` int(11) NOT NULL,
`qty_avail_ors` int(11) NOT NULL,
`qty_disp_zinc_ten` int(11) NOT NULL,
`qty_disp_zinc_twe` int(11) NOT NULL,
`qty_disp_zinc_syr` int(11) NOT NULL,
`qty_disp_ors` int(11) NOT NULL,
`stockout_zinc` varchar(11) NOT NULL,
`stockout_ors` varchar(11) NOT NULL,
`diar_cases_seen` int(11) NOT NULL,
`diar_cases_reff` int(11) NOT NULL,
`diar_deaths_less_than_five` int(11) NOT NULL,
`added_by` varchar(100) NOT NULL,
PRIMARY KEY (`field_visit_id`) )
ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
Но дело в том, что запрос успешно вставляет данные в таблицу, но сервер все равно показывает вышеуказанную ошибку.
Я даже использовал распечатанный выше запрос непосредственно в phpmyadmin, и он работал без проблем.
Я создаю проект на платформе Struts. Я получаю исключение от сервера при вставке данных в таблицу с помощью SQL, и я не могу найти решение. p> [b]Ошибка следующая:[/b]
javax.servlet.ServletException: com.mysql. jdbc.Exceptions.jdbc4.MySQLSyntaxErrorException: У вас есть ошибка в синтаксисе SQL; проверьте руководство , соответствующее версии вашего сервера MySQL, чтобы узнать правильный синтаксис для использования рядом с ',,,,,,,,'да','да',,,'admin')' на строка 1
[b]Мой код, который генерирует ошибку, выглядит следующим образом:[/b] [code]sql="Insert into field_visit_details (visit_date,block,village,flw_category, flw_name,flw_contact_no,aware_zinc, aware_ors,past_zinc,past_ors,qty_avail_zinc_ten,qty_avail_zinc_twe,qty_avail_zinc_syr, qty_avail_ors,qty_disp_zinc_ten,qty_disp_zinc_twe,qty_disp_zinc_syr,qty_disp_ors, stockout_zinc,stockout_ors,diar_cases_seen,diar_cases_reff,diar_deaths_less_than_five, added_by) values ('"+field_visit_date+"','"+block_row_one+"','"+village_row_one+"','"+flw_category_row_one +"','"+flw_name_row_one+"','"+flw_contact_no_row_one+"','"+aware_zinc_row_one+"','"+ aware_ors_row_one+"','"+past_zinc_row_one+"','"+past_ors_row_one+"','"+ qty_avail_zinc_ten_row_one+"','"+qty_avail_zinc_twe_row_one+"','"+ qty_avail_zinc_syr_row_one+"','"+qty_avail_ors_row_one+"','"+qty_disp_zinc_ten_row_one +"','"+qty_disp_zinc_twe_row_one+"','"+qty_disp_zinc_syr_row_one+"','"+ qty_disp_ors_row_one+"','"+stockout_zinc_row_one+"','"+stockout_ors_row_one+ "','"+diar_cases_seen_row_one+"','"+diar_cases_reff_row_one+"','"+diar_deaths_row_one +"','"+loginid+"')"; System.out.println(sql); int x=stmt.executeUpdate(sql); if(x>0) SUCCESS="admin"; [/code] [b]Структура таблицы следующая:[/b] [code] CREATE TABLE IF NOT EXISTS `field_visit_details` ( `field_visit_id` int(11) NOT NULL auto_increment, `visit_date` date NOT NULL, `block` varchar(100) NOT NULL, `village` varchar(100) NOT NULL, `flw_category` varchar(45) NOT NULL, `flw_name` varchar(100) NOT NULL, `flw_contact_no` varchar(13) NOT NULL, `aware_zinc` varchar(10) NOT NULL, `aware_ors` varchar(10) NOT NULL, `past_zinc` varchar(10) NOT NULL, `past_ors` varchar(10) NOT NULL, `qty_avail_zinc_ten` int(11) NOT NULL, `qty_avail_zinc_twe` int(11) NOT NULL, `qty_avail_zinc_syr` int(11) NOT NULL, `qty_avail_ors` int(11) NOT NULL, `qty_disp_zinc_ten` int(11) NOT NULL, `qty_disp_zinc_twe` int(11) NOT NULL, `qty_disp_zinc_syr` int(11) NOT NULL, `qty_disp_ors` int(11) NOT NULL, `stockout_zinc` varchar(11) NOT NULL, `stockout_ors` varchar(11) NOT NULL, `diar_cases_seen` int(11) NOT NULL, `diar_cases_reff` int(11) NOT NULL, `diar_deaths_less_than_five` int(11) NOT NULL, `added_by` varchar(100) NOT NULL, PRIMARY KEY (`field_visit_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; [/code] [b]Запрос, когда я печатал в консоли, был:[/b] [code]insert into field_visit_details (visit_date,block,village,flw_category,flw_name, flw_contact_no,aware_zinc,aware_ors,past_zinc,past_ors,qty_avail_zinc_ten, qty_avail_zinc_twe,qty_avail_zinc_syr,qty_avail_ors, qty_disp_zinc_ten,qty_disp_zinc_twe,qty_disp_zinc_syr,qty_disp_ors,stockout_zinc, stockout_ors,diar_cases_seen,diar_cases_reff,diar_deaths_less_than_five,added_by) values ('2014-07-02','ASDASD','','asha','asd+','99','yes','yes','yes','yes', '12','12','12','12','12','12','12','12','yes','yes','12','12','12','admin') [/code] Но дело в том, что запрос успешно вставляет данные в таблицу, но сервер все равно показывает вышеуказанную ошибку. Я даже использовал распечатанный выше запрос непосредственно в phpmyadmin, и он работал без проблем.