Уважаемые форумчане! Требуется ваша помощь!
Подскажите, как эффективно и просто решить задачу:
Есть массив (кстати, может заменить на объект?) и две таблицы в базе данных:
CODE ( text):
скопировать код в буфер обмена
$massive = [ 'animal' => 'cat', 'age' => '1', 'color' => 'gray' ]; $db = new PDO('sqlite:file.sqlite'); $db -> exec("CREATE TABLE IF NOT EXISTS 'table1' ( id INTEGER PRIMARY KEY AUTOINCREMENT, animal TEXT, age INTEGER )"); $db -> exec("CREATE TABLE IF NOT EXISTS 'table2' ( id INTEGER PRIMARY KEY AUTOINCREMENT, animal TEXT, color TEXT )"); $prepare1 = $db -> prepare("INSERT INTO 'table1' (animal, age) VALUES (:animal, :age)"); $prepare2 = $db -> prepare("INSERT INTO 'table2' (animal, color) VALUES (:animal, :color)");
Цель: записать массив в обе таблицы. Вроде просто и не было бы вопроса, если бы можно было этот массив отдать в execute и он сам взял что ему необходимо, но насколько я знаю, больше чем нужно параметров нельзя указывать.
Прошу учесть, что задача упрощена! В таблицах куча колонок, а не по две как здесь, поэтому их перечисление трудоёмко, это и заставляет искать иные способы!(Отредактировано автором: 18 Июля, 2017 - 18:49:18)
|