когда я выполняю эту хранимую процедуру, если найденная запись не содержит ошибок и возвращает строки, но если не найдено ни одной записи, эта ошибка отсутствует, и в этой таблице нет внешнего ключа, тем не менее я попытался сделать это, добавив
SET FOREIGN_KEY_CHECKS = 0;
в начале SP и в конце SP
SET FOREIGN_KEY_CHECKS = 1;
Но это не сработало
Хранимая процедура:
CREATE DEFINER=`root`@`localhost` PROCEDURE `find_location`
(IN `location` VARCHAR(50))
NOT DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER
BEGIN
SELECT * FROM properties
WHERE properties_location LIKE concat('%',location,'%');
END
Ошибка
Статический анализ:
*В ходе анализа было обнаружено 1024 * 1 ошибок.
1.Пропущенное выражение.(около «ON» в позиции 25) SQL-запрос: Edit Edit
SET FOREIGN_KEY_CHECKS = ON;
MySQL сказал: Документация
# 2014 - команды изсинхронизации;Вы не можете выполнить эту команду сейчас
Структура таблицы
CREATE TABLE `properties` (
`properties_id` bigint(20) NOT NULL,
`properties_title` varchar(500) NOT NULL,
`properties_country` varchar(200) NOT NULL,
`properties_state` varchar(200) NOT NULL,
`properties_city` varchar(200) NOT NULL,
`properties_location` varchar(200) DEFAULT NULL,
`properties_contact` bigint(20) DEFAULT NULL,
`properties_agent` bigint(20) DEFAULT NULL,
`properties_floorarea` decimal(15,3) DEFAULT NULL,
`properties_bedrooms` int(5) DEFAULT NULL,
`properties_bathrooms` int(5) DEFAULT NULL,
`properties_type` varchar(100) DEFAULT NULL,
`properties_furnishing` varchar(100) DEFAULT NULL,
`properties_userid` bigint(20) NOT NULL,
`properties_usertype` varchar(50) NOT NULL,
`properties_isapproved` int(1) NOT NULL DEFAULT '1',
`properties_isactive` int(1) NOT NULL DEFAULT '1',
`properties_cr_dt` datetime NOT NULL DEFAULT NOW(),
`properties_md_dt` datetime DEFAULT NULL,
`properties_description` varchar(19000) DEFAULT NULL,
`properties_img` varchar(600) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;