2016-02-26 4 views
0

Я создал таблицу и скрипт, которые при необходимости динамически изменяются.Выбор переменной для динамически созданного столбца MYSQL

Так что в редкие моменты времени столбец таблицы необходим, так как его нет. Затем он добавляется в конец таблицы. Что-то вроде ниже:

╔═════════════════════════════════════════════════════════════╗ 
║ +----+------+------+------------------+-------------------+ ║ 
╠═════════════════════════════════════════════════════════════╣ 
║ | id | Col2 | Col3 | dynamicallyadded | dynamicallyadded2 | ║ 
║ +----+------+------+------------------+-------------------+ ║ 
║ | 1 | 33 | 3 |    3 |     3 | ║ 
║ | 2 | 44 | 4 |    1 |     1 | ║ 
║ | 3 | 45 | 23 |    533 |    533 | ║ 
║ +----+------+------+------------------+-------------------+ ║ 
╚═════════════════════════════════════════════════════════════╝ 

Таким образом добавляется динамически добавленная колонка.

Теперь, если я хочу, чтобы выбрать столбцы, я не могу понять, как динамически создавать переменные для информации столбца, кратко описанных ниже (помните эти динамические столбцы создаются в фоновом режиме):

$selectVar = Select statement when id = '1'; 
$dynamic1 = $selectVar ->dynamicallyadded; 
$dynamic2 = $selectVar ->dynamicallyadded2; 

echo '$dynamic1 and $dynamic2'; 

Итак, когда я выплюнул это как отчет, я бы хотел, чтобы я мог выплюнуть отчет каждого динамического столбца, хотя я не буду знать, что имена столбцов после id.

Я занимаюсь подсчетом столбцов, но я не уверен, что это отличный маршрут. Все лучшие идеи

+0

Вы можете использовать 'SELECT *', а затем 'FETCH_ASSOC()' возвращает ассоциативный массив со всеми именами столбцов в качестве ключей. Затем вы можете выполнить цикл, чтобы получить все столбцы. – Barmar

ответ

0

DESCRIBE my_table;

или

SHOW COLUMNS FROM table;

или

SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'database' AND TABLE_NAME = 'table';

+0

Привет Гэвин. Как это можно применить к генерированию переменных? Я в замешательстве об этом? – hfw

+0

Я не уверен, что полностью понимаю. Я думал, что вам просто нужны имена столбцов таблицы, если имена столбцов неизвестны. – Gavin

+0

Получение результата в виде ассоциативного массива будет иметь имена столбцов в качестве имени ключа. – Gavin

Смежные вопросы