powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Странное поведение update в хранимых процедурах
4 сообщений из 4, страница 1 из 1
Странное поведение update в хранимых процедурах
    #38337995
gshadrin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дана таблица
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CREATE TABLE `objects` (
	`id` int NOT NULL AUTO_INCREMENT,
	`name` nvarchar(100) NOT NULL,
	`description` text,
	`createdAt` datetime NOT NULL,
	`updatedAt` datetime NOT NULL,
	`folderID` int NOT NULL,
	PRIMARY KEY (`id`),
	UNIQUE KEY `name_UNIQUE` (`name`),
	KEY `fk_folderID` (`folderID`),
	CONSTRAINT `fk_folderID` FOREIGN KEY (`folderID`) REFERENCES `folders` (`id`) 
		ON DELETE NO ACTION ON UPDATE NO ACTION
	) ENGINE=InnoDB;



Дана процедура
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
DELIMITER // 
CREATE PROCEDURE `save_obj`(id int, name nvarchar(100), description text,
	 createdAt datetime, updatedAt datetime, folderID int)
LANGUAGE SQL 
BEGIN 
   UPDATE `objects` 
	SET
   	`name` = name,
   	`description` = description,
   	`createdAt` = createdAt,
   	`updatedAt` = updatedAt,
   	`folderID` = folderID
   WHERE 
   	`id` = id;
END;//



Процедура вызывается
Код: sql
1.
call save_test(4 , "qqqqqq", "d", "2011-12-18 13:17:17", "2011-12-18 13:17:17", 1);



Ошибка Duplicate entry 'qqqqqq' for key 'name_UNIQUE'

Делаю update напрямую (без хранимой процедуры) с теме же параметрами
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
 UPDATE `objects` 
            SET
                `name` = "qqqqqq",
                `description` = "description",
                `createdAt` = "2011-12-18 13:17:17",
                `updatedAt` = "2011-12-18 13:17:17",
                `folderID` = "1"
            WHERE 
                `id` = 4;



Запрос проходит успешно, свойство меняется. В обоих случаях ключ "qqqqqq" не использовался ранее в таблице. Магия какая-то.
Почему так? и что я делаю не так?
...
Рейтинг: 0 / 0
Странное поведение update в хранимых процедурах
    #38337997
gshadrin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
База 5.6
...
Рейтинг: 0 / 0
Странное поведение update в хранимых процедурах
    #38338002
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
gshadrin...
Почему так?
с чуть большей "фантазией" подойди к вопросу именования параметров ХП
...
Рейтинг: 0 / 0
Странное поведение update в хранимых процедурах
    #38338007
gshadrin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qwerty112,

благодарю, что-то я затупил
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Странное поведение update в хранимых процедурах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]