MySQL - предупреждающее сообщение phpmyadmin - PullRequest
0 голосов
/ 19 июня 2020
CREATE TABLE `projekt_ti_cdv`.`offer` ( `offer_id` INT(2) NOT NULL AUTO_INCREMENT , `offer_type` VARCHAR(256) NOT NULL , `offer_price` INT(256) NOT NULL , `offer_realization` INT(256) NOT NULL , `offer_any_daw` VARCHAR(100) NOT NULL , `offer_vst` VARCHAR(256) NOT NULL , PRIMARY KEY (`offer_id`)) ENGINE = InnoDB;

Я попытался создать таблицу в своей базе данных и получил предупреждающее сообщение от localhost «Пожалуйста, введите допустимую длину». Я не знаю, как это исправить.

BR, Крис

1 Ответ

0 голосов
/ 19 июня 2020

Максимально допустимая длина для типа данных INT равна 255. Вам необходимо исправить это в своем операторе.

Я не уверен, что вы все равно хотите указать длину. Размер INT всегда составляет 4 байта, независимо от указанной длины - длина здесь только для указания заполнения, которое используется при отображении значений в клиенте командной строки.

Я бы порекомендовал:

CREATE TABLE `projekt_ti_cdv`.`offer` ( 
    `offer_id` TINYINT NOT NULL AUTO_INCREMENT , 
    `offer_type` VARCHAR(256) NOT NULL , 
    `offer_price` INT NOT NULL , 
    `offer_realization` INT NOT NULL , 
    `offer_any_daw` VARCHAR(100) NOT NULL , 
    `offer_vst` VARCHAR(256) NOT NULL , 
    PRIMARY KEY (`offer_id`)
) ENGINE = InnoDB;

Я изменил тип данных столбца offer_id на TINYINT, так как вам кажется, что вам нужно меньшее число для этого: он может хранить значения до 127 (или 255 без знака). См. документацию для получения дополнительной информации о хранении целочисленных типов данных и диапазонах.

...