/** * test query with trigger */ public function test_query_trigger() { $this->adapter->multi_query("\n DROP TABLE IF EXISTS test;\n DROP TABLE IF EXISTS log;\n\n CREATE TABLE `test` (\n `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,\n `content` TEXT NOT NULL\n ) ENGINE = MYISAM;\n\n CREATE TABLE `log` (\n `id` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,\n `msg` VARCHAR( 255 ) NOT NULL,\n `time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\n `row_id` INT( 11 ) NOT NULL\n ) ENGINE = MYISAM;\n\n CREATE TRIGGER `update_test` AFTER INSERT ON `test`\n FOR EACH ROW BEGIN\n INSERT INTO log SET msg = 'insert', row_id = NEW.id;\n END;\n\n INSERT INTO test (id, content)\n VALUES\n (2, 'Cup');\n "); $log = $this->adapter->select_one('SELECT id, msg, row_id FROM log'); $expected = array('id' => 1, 'msg' => 'insert', 'row_id' => 2); $this->assertEquals($expected, $log); $this->adapter->drop_table('test'); $this->adapter->drop_table('log'); }
/** * Execute a query * * @param string $query the query or queries to run * * @return boolean */ public function execute($query) { return $this->_adapter->multi_query($query); }