У меня есть таблица
$query=
"CREATE TABLE screenshot ".
"(screenshot_id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, ".
"source_video_id INT UNSIGNED NOT NULL, ".
"screenshot_file_name VARCHAR(128), ".
"x_res INT, ".
"y_res INT, ".
"time INT UNSIGNED);";
mysql_query($query);
Затем я вставляю вещи в эту таблицу.
Я часто хочу выполнить SQL-запрос и выполнить итерацию по результату запроса, но в итоге получаюделать это.
//select all screenshots from video, by video id
$q0=
"SELECT * FROM screenshot ".
"WHERE source_video_id = '$source_video_id' ".
"AND x_res = 120 ".
"AND y_res = 90 ".
"ORDER BY time ASC;";
$r0 = mysql_query($q0);
$n0_num = mysql_numrows($r0);
//for each result
for($n0=0;$n0<$n0_num;$n0++) {
$source_video_id = mysql_result($r0,$n0,'source_video_id');
$time = mysql_result($r0,$n0,'time');
$screenshot_file_name = mysql_result($r0,$n0,'screenshot_file_name');
//do stuff for each returned result!
}
Это просто безобразно.Чтобы получить результаты SQL-запроса, я должен написать это для каждого столбца!$ source_video_id = mysql_result ($ r0, $ n0, 'source_video_id');
Я должен написать уродливый цикл, получить результаты для каждой возвращенной строки и сделать что-то для каждого результата.В основном я хочу что-то вроде:
foreach($SQL_command) {
//Do for each result
}
Я хочу, чтобы переменные столбца для каждой строки уже были установлены, чтобы мне не приходилось делать
$source_video_id = mysql_result($r0,$n0,'source_video_id');
Для каждого столбцаЯ хочу получить доступ!
Мне надоело писать код котельной плиты, чтобы сделать это для каждой таблицы в моих данных.Существуют ли какие-либо фреймворки или библиотеки, которые сделали бы это менее болезненным?