php и mysql - проверка существования
Сложилась ситуация:
набрасываю небольшой сайт, который должен быть кроссхостинговым в отношении mysql -> базы и таблицы должны создаваться сами, если их нет. У меня есть решение, но с моей точки зрения оно не рациональное. $db=array(); $sq=mysql_query("SHOW DATABASES"); if(mysql_num_rows($sq)>0){ while($row = mysql_fetch_array($sq, MYSQL_NUM)){ $db[] = $row[0]; } } $b=array("base1","base2","base3"); for($i=0;$i<count($db);$i++){ $cdb=1; for($j=0;$j<count($b);$i++){ if($db[$i]==$b[$j]){$cdb=0; break;} } if($cdb==1){mysql_query("CREATE DATABASE $db[$i]");} } Это относится и к таблицам таким же способом. А смысл в том, что нужно проверить существует ли база, а в ней и соответствующие таблицы, что указано в некотором массиве, и при отсутствии создать их. Думаю, есть варианты проверки проще, но как-то не могу понять и найти соответствующий материал, видимо из-за недостаточного знания mysql. |
CREATE DATABASE IF NOT EXISTS `blah_base` CREATE TABLE IF NOT EXISTS `blah_table` |
О, БОГИ, я ещё совсем маленький...
devote, спасибо! Успешного дня ) |
Часовой пояс GMT +3, время: 22:33. |