Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проверка из ПХП на существование таблицы в Мускуле, Как...? 
:(
    Опции темы
-=Ustas=-
Дата 29.4.2005, 09:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 17
Всего: 69



Hi!
Скажите, как можно из ПХП проверить, существует ли определенная таблица в Мускуле или нет?
Сеньки.


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
IZ@TOP
Дата 29.4.2005, 09:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Код

$q = mysql_query('show tables');
while($n = mysq_fetch_row($q)) { $tables[$n] = 1; }
if(isset($tables['my_tablename'])) {
   echo 'my_tablename is exists';
}


Ну наверное такой код должен подойти.


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
skalex
Дата 29.4.2005, 09:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хороший человек
**


Профиль
Группа: Участник Клуба
Сообщений: 895
Регистрация: 2.4.2004

Репутация: нет
Всего: 23



Решение в лоб ...
Выполнить запрос "SHOW TABLES" или используя функцию mysql_list_tables, перебором проверить существование таблицы.
PM   Вверх
IZ@TOP
Дата 29.4.2005, 09:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Цитата(Mace @ 29.4.2005, 10:46)
или используя функцию mysql_list_tables, перебором проверить

Тогда все упрщается:

Код

$tables = array_flip(mysql_list_tables('dbname', $link));
if(isset($tables['my_tablename'])) {
   echo 'my_tablename is exists';
}



--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
skalex
Дата 29.4.2005, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хороший человек
**


Профиль
Группа: Участник Клуба
Сообщений: 895
Регистрация: 2.4.2004

Репутация: нет
Всего: 23



IZ@TOP, постой, mysql_list_tables возвращает не массив, поэтому array_flip здесь не прокатит.... Но общий смысл вполне понятен! smile
PM   Вверх
IZ@TOP
Дата 29.4.2005, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Панда-бир!
****


Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес

Репутация: 4
Всего: 73



Mace... а что он возвращает??? а... все, понял. smile Тогда по типу первого варианта smile


--------------------
Один из розовых плюшевых-всадников апокалипсиса... очень злой...

Семь кругов ада для новых элементов языка
Мои разрозненные мысли
PM MAIL WWW ICQ Skype GTalk   Вверх
Irokez
Дата 29.4.2005, 13:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


индеец
***


Профиль
Группа: Участник Клуба
Сообщений: 1180
Регистрация: 20.10.2004

Репутация: 3
Всего: 53



Код

show tables from `database` like 'table_name' ;

PM   Вверх
Mal Hack
Дата 29.4.2005, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



А зачем память грузить?
не проще выполнит
SELECT `*` FROM `table`
и затем проверить mysql_error() на 0??

Цитата(Mace @ 29.4.2005, 10:46)
или используя функцию mysql_list_tables

Не рекомендуют ее использовать.
PM ICQ   Вверх
-=Ustas=-
Дата 1.5.2005, 07:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 17
Всего: 69



Сеньки всем!
Все пучком!
Добавлено @ 07:59
Да, и еще, что здесь с форумом случилось? Не приходят уведомления на мыло, хотя подпись на ответы ставлю!


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0509 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.