Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   php и mysql - проверка существования (https://javascript.ru/forum/server/25776-php-i-mysql-proverka-sushhestvovaniya.html)

d-kaktus 15.02.2012 10:04

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.

devote 15.02.2012 10:07

CREATE DATABASE IF NOT EXISTS `blah_base`

CREATE TABLE IF NOT EXISTS `blah_table`

d-kaktus 15.02.2012 10:27

О, БОГИ, я ещё совсем маленький...
devote, спасибо! Успешного дня )


Часовой пояс GMT +3, время: 22:33.