Создаю две таблицы:
CREATE TABLE subject (
subject_id INT UNSIGNED NOT NULL AUTO_INCREMENT,
subject_name VARCHAR(40) DEFAULT '' NOT NULL,
PRIMARY KEY (subject_id,subject_name)
);
CREATE TABLE resubject (
subject_id INT UNSIGNED NOT NULL,
resubject_name VARCHAR(40) DEFAULT '' NOT NULL,
osnovanie VARCHAR(200) DEFAULT '' NOT NULL,
prichina VARCHAR(200) DEFAULT '' NOT NULL
);
Пусть есть форма где вводятся значения, потом эти значения заносим
в таблицы
$sth = $this->{dbh} -> prepare("INSERT INTO subject ( subject_name)
VALUES ( '$mchs_data_in->{'name'}')");
$sth ->execute();
Так вот собственно вопрос - как мне узнать subject_id после этой операции,
для второй таблици, может быть много одинаковых subject_name. В голову
приходит только:
$sth = $this->{dbh} -> prepare("SELECT subject_name, subject_id FROM
subject WHERE ( subject_name = 'data_in->{'name'}') ORDER BY subject_id LIMIT 1");
$sth ->execute();
Но это кажется как-то не правильно. Для примера привел только две таблици, на самом деле
их 10.
Ответ на:
комментарий
от phoenix

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум MyQSL (2005)
- Форум mysql запрос (2007)
- Форум [sql] [mysql] Помогите составить запрос (2010)
- Форум [mysql] Чудо (2010)
- Форум Ключи MySQL (2015)
- Форум 1:n relationship (2018)
- Форум Ошибка создания таблицы в БД (2009)
- Форум MySQL, ошибка 150. (2013)
- Форум SQL+PHP (2010)
- Форум netstat (2007)