Мое приложение требует 5 различных категорий транспортных средств, и каждая категория транспортного средства имеет некоторые общие поля. Итак, что я сделал, было создано 5 таблиц для каждой из 5 категорий транспортных средств vehicle1
, vehicle2
, vehicle3
, vehicle4
, vehicle5
, а затем создано шестое стол «транспортное средство» для хранения полей, которые являются общими для каждого транспортного средства. Теперь всякий раз, когда я ввожу информацию, относящуюся к определенному транспортному средству, которое представляет собой таблицу категорий конкретного транспортного средства, запускается триггер, который вставляет общие поля в таблицу vehicle
. так спусковые выглядеть следующим образомmysql триггер частично работает
CREATE TRIGGER `tr_vehicle1_info` AFTER INSERT ON `vehicle1`
FOR EACH ROW insert into vehicle(categ,year,make,model,vin,user_id,principal_driver) values (1,new.year,new.make,new.model,new.vin,new.user_id,new.principal_driver)
CREATE TRIGGER `tr_vehicle1_info` AFTER INSERT ON `vehicle2`
FOR EACH ROW insert into vehicle(categ,year,make,model,vin,user_id,principal_driver) values (2,new.year,new.make,new.model,new.vin,new.user_id,new.principal_driver)
CREATE TRIGGER `tr_vehicle1_info` AFTER INSERT ON `vehicle3`
FOR EACH ROW insert into vehicle(categ,year,make,model,vin,user_id,principal_driver) values (3,new.year,new.make,new.model,new.vin,new.user_id,new.principal_driver)
и так далее .....
Теперь проблема заключается в том, что, когда я вставить данные для автомобиля триггер выполняет и значения вставляются в таблицу vehicle
но для поля categ
в таблице vehicle
всегда вставлен столбец 0
. тип поля categ
: tinyint(1)
.
Я не понимаю, что случилось. Помогите?
UPDATE
схема транспортного средства
CREATE TABLE IF NOT EXISTS `vehicle` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`categ` tinyint(1) NOT NULL,
`year` char(4) NOT NULL,
`make` varchar(30) NOT NULL,
`model` varchar(50) NOT NULL,
`vin` varchar(25) NOT NULL,
`user_id` int(11) NOT NULL,
`principal_driver` int(11) DEFAULT NULL,
`secondary_driver` varchar(30) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
KEY `vin` (`vin`,`user_id`)
) ENGINE=InnoDB;
вы можете показать вывод вашей таблицы 'убывание vehicle' –
@NaveenKumar сделало – lovesh
, что была проблема. –