|
|
|
| Можно ли каким-либо образом узнать о существовании таблицы? | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2009 в 16:57)
| | Ну можно сделать запрос вида
<?php
$sql = mysql_query("SELECT * FROM tbl");
if(!$sql) echo mysql_error();
?>
|
Если ее не существует, MySQL сервер вернет соответсвующую ошибку
А для каких целей Вы хотите узнать? Если Вы хотите просто экспортировать дамп с таблицей, то
CREATE TABLE IF NOT EXISTS `tbl` .... | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2009 в 16:57)
| | кому узнать?
у администратора средств достаточно.
Логика приложения опирается на уже подготовленную схему БД, зная какие в ней таблицы и зачем.
Если это, конечно, не инсталлятор или что-либо подобное. Тогда да.
Обычное приложение таблицами, как данными оперировать не должно. | |
|
|
|
|
|
|
|
для: Trianon
(02.02.2009 в 17:54)
| | Понятно. | |
|
|
|
|
|
|
|
для: Владимир55
(02.02.2009 в 16:57)
| | Можно выполнить запрос вида
SHOW TABLES LIKE 'имя_таблицы'
|
| |
|
|
|
|
|
|
|
для: cheops
(03.02.2009 в 02:30)
| | Я делаю это так:
$query = "SHOW TABLES LIKE bot";
mysql_query($query);
echo mysql_errno()." 38 : ".mysql_error()."<BR>";
|
И получаю сообщение:
1064 38 : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'bot' at line 1
|
Что неверно? | |
|
|
|
|
|
|
|
для: Владимир55
(03.02.2009 в 15:13)
| | Там должна быть строка. Строка обрамляется либо в кавычки, либо в апострофы.
<?php
$query = "SHOW TABLES LIKE 'bot';";
?>
|
| |
|
|
|
|
|
|
|
для: BinLaden
(03.02.2009 в 16:22)
| | Вот в таком виде
$query = "SHOW TABLES LIKE 'bot'";
| комадна прошла.
Но что толку? Она и при наличии таблицы проходит, и при её отсутствии проходит... Как выловить результат проверки? Как по итогам исполнения запроса узнать, есть ли таблица? | |
|
|
|
|
|
|
|
для: Владимир55
(03.02.2009 в 16:35)
| | получить результат, как от произвольного SELECT-запроса.
while($row = mysql_fetch_assoc($res)) ...
Впрочем, я остаюсь в уверенности, что это Вам не нужно. | |
|
|
|
|
|
|
|
для: Trianon
(03.02.2009 в 16:42)
| | "я остаюсь в уверенности, что это Вам не нужно."
Я просто пытаюсь хоть что-то понять... | |
|
|
|
|
|
|
|
для: Владимир55
(03.02.2009 в 16:47)
| |
$query = "SHOW TABLES LIKE bot";
$res = mysql_query($query);
if(!$res) exit("Mysql error in $query : " . mysql_error());
while($row = mysql_fetch_assoc($res))
print_r($row);
|
| |
|
|
|
|
|
|
|
для: Trianon
(03.02.2009 в 16:49)
| | Дело проясняется...
Спасибо! | |
|
|
|
|
автор: qweewqqwe (26.07.2014 в 21:45) |
|
|
для: Владимир55
(03.02.2009 в 18:01)
| | $res=mysql_query("SHOW TABLES LIKE 'bot'");rnif(mysql_num_rows>0)rn{rn // таблица естьrn}rnelsern{rn // таблицы нетrn} | |
|
|
|