Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: trigger

Сообщения:  [1-7] 

 
 автор: chelovek   (24.06.2007 в 12:54)   письмо автору
 
   для: cheops   (24.06.2007 в 11:40)
 

Пасибо, все заработало...
Но тем не менее нельзя ли увидеть пример подобного триггера - это на будущее, для общего развития, если не сложно...

   
 
 автор: cheops   (24.06.2007 в 11:40)   письмо автору
 
   для: chelovek   (24.06.2007 в 05:35)
 

Выполните запрос
ALTER TABLE jobtitle ADD UNIQUE (
id_CategoryWorker ,
Title) 

Или создайте таблицу по новой при помощи SQL-запроса
CREATE TABLE jobtitle (
  id_JobTitle int(11) NOT NULL auto_increment,
  id_CategoryWorker int(11) NOT NULL,
  Title char(255) NOT NULL,
  PRIMARY KEY  (`id_JobTitle`), 
  KEY `id_CategoryWorker` (`id_CategoryWorker`), 
  CONSTRAINT `jobtitle_ibfk_1` FOREIGN KEY (`id_CategoryWorker`) REFERENCES `categoryworker` (`id_CategoryWorker`) ON UPDATE CASCADE  UNIQUE KEY id_CategoryWorker_2,
 (id_CategoryWorker,Title)
)  ENGINE=InnoDB DEFAULT CHARSET=utf8;

   
 
 автор: chelovek   (24.06.2007 в 05:35)   письмо автору
 
   для: Trianon   (24.06.2007 в 02:50)
 

А как это сделать??? Честно говоря это наверное было бы лучше...

   
 
 автор: Trianon   (24.06.2007 в 02:50)   письмо автору
 
   для: chelovek   (23.06.2007 в 14:30)
 

а уникальный ключ на два поля поставить недостаточно?

   
 
 автор: chelovek   (23.06.2007 в 14:30)   письмо автору
 
   для: cheops   (23.06.2007 в 14:19)
 

Ну структурка совсем простая...


CREATE TABLE `jobtitle` (
          `id_JobTitle` int(11) NOT NULL auto_increment,
          `id_CategoryWorker` int(11) NOT NULL,
          `Title` char(255) NOT NULL,
           PRIMARY KEY  (`id_JobTitle`),
           KEY `id_CategoryWorker` (`id_CategoryWorker`),
          CONSTRAINT `jobtitle_ibfk_1` FOREIGN KEY (`id_CategoryWorker`) REFERENCES `categoryworker` (`id_CategoryWorker`) ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8



Поля `id_CategoryWorker` и `Title` как раз и должны проверяться на уникальность!

   
 
 автор: cheops   (23.06.2007 в 14:19)   письмо автору
 
   для: chelovek   (23.06.2007 в 14:15)
 

Приведите структуру таблицы (оператор SHOW CREATE TABLE), если не сложно, и укажите о каких полях идёт речь?

   
 
 автор: chelovek   (23.06.2007 в 14:15)   письмо автору
 
 

Подскажите пожалуйста, как написать триггер, который выдавал бы ошибку при добавлении или обновлении поля, только в случае, когда 2 вводимых значения полей совпадают с двумя существующими одновременно. Заранее благодарю...

   

Сообщения:  [1-7] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования