Как мы можем проверить, существует ли столбец в таблице в MySQL без использования хранимой процедуры. MySQL v3.23, который не поддерживает написание процедуры хранения.

0
Santoshkumar 3 Фев 2022 в 10:55
1
Можете ли вы обновить? У вас есть инструкция или ссылка на эту устаревшую версию?
 – 
P.Salmon
3 Фев 2022 в 11:13
Вы можете делать много вещей, которые вы хотите, если вы обновитесь. Настоятельно рекомендуется.
 – 
The Cool Cat
3 Фев 2022 в 11:15

2 ответа

Попробуйте это, подсчитав столбцы в вашей таблице с помощью information_schema.COLUMNS.

SELECT COUNT(*) FROM information_schema.`COLUMNS` WHERE table_schema = 'your_database_name' AND table_name='your_table_name' AND column_name='your_column_name';

Таблица INFORMATION_SCHEMA COLUMNS предоставляет информацию о столбцах в таблицах.

Ссылка на сайт

0
The Cool Cat 3 Фев 2022 в 11:12
Пробовал это, но получил эту ошибку «Таблица 'information_schema.columns' не существует»
 – 
Santoshkumar
3 Фев 2022 в 11:12
Ой. Это печально. Возможно, вы захотите перейти на версию 5.7 или mysql 8.0, не так ли?
 – 
The Cool Cat
3 Фев 2022 в 11:14
Я ставлю, что это будет последний вариант. требуется немного больше усилий, чтобы обновить все системы, которые у нас есть. поэтому хотел попробовать, можно ли это сделать в существующем.
 – 
Santoshkumar
3 Фев 2022 в 11:21

V3.23 ?? Если вы знаете имя таблицы и имя столбца, попробуйте описать имя таблицы или показать имя таблицы, если вы знаете только имя столбца, выберите * из информации schema.columns, где имя_столбца = имя_столбца. Показать таблицы должны показывать все таблицы, а затем вручную выбирать имя столбца из перечисленных таблиц.

Но эта версия настолько древняя, что я понятия не имею, будет ли работать какая-либо из них.

0
P.Salmon 3 Фев 2022 в 11:15