как узнать существует ли поле в таблице?

Тема в разделе "PHP", создана пользователем nmDimas2, 18 ноя 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. nmDimas2

    nmDimas2 Постоялец

    Регистр.:
    20 апр 2010
    Сообщения:
    78
    Симпатии:
    12
    как узнать существует ли поле в таблице?
    мне надо типа такой цыкл проверки

    Существует ли в таблице ТАБЛ1 поле 1 Если нет то Создать
    Существует ли в таблице ТАБЛ2 поле 1 Если нет то создать



    Инфы в гугл и яндексе искал и ее там нету

    Огромное спс тем кто поможет



    Вот чо я покопался может у меня большая проблема то что у меня поле называется Цифрой ?
     
  2. Murdok

    Murdok

    Регистр.:
    1 окт 2006
    Сообщения:
    236
    Симпатии:
    84
  3. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    363
    Симпатии:
    117
    SHOW COLUMNS FROM t1
    OR
    SHOW CREATE TABLE t1

    http://dev.mysql.com/doc/refman/5.0/en/show.html

    >>>Вот чо я покопался может у меня большая проблема то что у меня поле называется Цифрой ?
    цифры - допустимое имя для столбца, с ним проблем быть не должно
     
    nmDimas2 нравится это.
  4. nmDimas2

    nmDimas2 Постоялец

    Регистр.:
    20 апр 2010
    Сообщения:
    78
    Симпатии:
    12
    не люблю делать заумно так как я толком еще не учил глубоко хотя если бы была бы литература хорошая то с удовольствиям прочитал бы. К сути
    сделал так

    $ntabl имя таблицы
    $res_id[id] Имя поля (цифра)

    вроде все пашет
    что скажете начет мого решения?

    PHP:
    if(!@mysql_query('SELECT 1 FROM `$ntabl` WHERE `$res_id[id]`')){
    }
     
  5. chang

    chang

    Регистр.:
    20 ноя 2009
    Сообщения:
    363
    Симпатии:
    117
    вроде не считается
    оно то пашет но явно не так как задумывалось в первом посте

    SELECT 1 FROM `$ntabl` WHERE `$res_id[id]`
    если "перевести" на русский то будет звучать что-то типа

    "извлечь единицу из таблицы $ntabl при условии что выполняется условие WHERE `$res_id[id]` "

    а если у вас $res_id[id] Имя поля (цифра) всегда больше 0 то данное условие всегда будет выполнятся

    --------

    чем не устраивает SHOW COLUMNS FROM `$ntabl` ?
    в ответ получите массив первый стоблбец которого будет имя таблицы, которое легко можно будет проверить на равенство с $res_id[id]

    ну и если оно отсутствует то создавать его
     
    nmDimas2 нравится это.
  6. nmDimas2

    nmDimas2 Постоялец

    Регистр.:
    20 апр 2010
    Сообщения:
    78
    Симпатии:
    12
    иммено так , Поле у меня цыфры я просто привязую ИД к полю тоесть чиловове значение .
     
  7. Mr.Emm

    Mr.Emm Постоялец

    Регистр.:
    5 май 2008
    Сообщения:
    147
    Симпатии:
    110
    видимо ты плохо искал...
    http://www.snippets.crisp-studio.com/view/82/proverka-na-sushhestvovanie-dobavlyaemogo-v-tablicu-polya-v-mysql
     
  8. nmDimas2

    nmDimas2 Постоялец

    Регистр.:
    20 апр 2010
    Сообщения:
    78
    Симпатии:
    12
    Есть смысл переделывать или это просто один из вариантов решение задачи?
    если есть то скажите какой мне как начинающему программисту интересно почему меньше емкие скрипты надо переписывать в больше емкие.

    Просто мне кажется чем меньше функций и проще тем быстрее работает и меньше жрет памяти сервера
     
Статус темы:
Закрыта.