Определить максимальное количество символов в поле

sql
Вопрос:Размер поля MySQL daabase, над которым я работаю, был довольно условным, и я бы хотел просмотреть их на основе его текущих данных. Поэтому я хотел бы определить максимальное количество символов для каждого поля, поэтому я уверен, что не буду потерять какие-либо данные при обновлении размера поля. Есть ли функция phpmyadmin или оператор SQL, который может

Вопрос:

Размер поля MySQL daabase, над которым я работаю, был довольно условным, и я бы хотел просмотреть их на основе его текущих данных. Поэтому я хотел бы определить максимальное количество символов для каждого поля, поэтому я уверен, что не буду потерять какие-либо данные при обновлении размера поля.

Есть ли функция phpmyadmin или оператор SQL, который может мне помочь?

Спасибо

Лучший ответ:

используйте CHAR_LENGTH, ex

SELECT MAX(CHAR_LENGTH(column1)) maxCol1, MAX(CHAR_LENGTH(column2)) maxCol2, MAX(CHAR_LENGTH(column3)) maxCol3 FROM tableName

Вы также можете использовать Dynamic SQL, если у вас есть неизвестное количество столбцов. Все, что вам нужно указать, это имя базы данных и имя таблицы,

SET @db_Name = ‘db_2_21a29’; SET @tb_name = ‘TABLENAME’; SET @sql = NULL; SELECT GROUP_CONCAT(DISTINCT CONCAT(‘MAX(CHAR_LENGTH(‘, COLUMN_NAME, ‘)) AS `’, COLUMN_NAME, ‘`’) ) INTO @sql FROM information_schema.columns WHERE TABLE_NAME = @tb_name AND TABLE_SCHEMA = @db_Name; SET @sql = CONCAT(‘SELECT ‘,@sql, ‘FROM ‘, @tb_name); PREPARE stmt FROM @sql; EXECUTE stmt; DEALLOCATE PREPARE stmt;

Ответ №1

В phpmyadmin вы можете узнать эти данные с вкладки Структура вашей таблицы. посмотрите на прикрепленное изображение:

enter image description here

Оцените статью
Добавить комментарий