Mysql pdo тип столбца, имя и значение - PullRequest
0 голосов
/ 21 мая 2019

Я использую php 7.2, mysql pdo и пытаюсь получить тип столбца, имя и значение. Я использовал это, что помогло мне с именем и значением столбца, но теперь я хотел бы динамически читать тип (varchar, text, date ect ...)

$sql = "SELECT * FROM myTable WHERE id = :id limit 1";

$st = $db->prepare($sql);
$st->execute([":id" => $id]);
$row = $st->fetch(PDO::FETCH_ASSOC);

if (count($row) >= 1) {
    foreach ($row as $column => $value) {
            $$column = $value; 
        }

}

1 Ответ

0 голосов
/ 22 мая 2019

Попробуйте выполнить следующий запрос:

SHOW COLUMNS FROM myTable;

Например:

mysql> SHOW COLUMNS FROM price;
+----------------+--------------+------+-----+---------+----------------+
| Field          | Type         | Null | Key | Default | Extra          |
+----------------+--------------+------+-----+---------+----------------+
| price_id       | int(11)      | NO   | PRI | NULL    | auto_increment |
| effective_date | date         | NO   |     | NULL    |                |
| min_quantity   | int(11)      | NO   |     | NULL    |                |
| price          | decimal(7,0) | NO   |     | NULL    |                |
+----------------+--------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)

Столбец Поле даст вам имя столбца , Введитетип столбца , NULL будет «НЕТ» или «ДА» в зависимости от того, можно ли обнулять столбец, «Ключ» будет «PRI», если столбец является частью первичного ключа, и т. д. Прочтите руководство.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...