Размер строки слишком велик. Максимальный размер строки для используемого типа таблицы, не считая BLOB, составляет 65535 - PullRequest
0 голосов
/ 19 февраля 2020

Почему я вижу эту проблему только в конкретной базе данных? Я выполнил тот же запрос создания таблицы к другой базе данных того же сервера. Он работал отлично, но он выдает указанную ошибку одной конкретной БД.

Определены ли какие-либо свойства конфигурации, позволяющие пользователю запускать создать запрос таблицы без ограничения строк в одной базе данных и блокировать другие серверы того же сервера?

Версия БД: Maria DB: 10.3.18

Запрос:

        SET @report_note_create=CONCAT("CREATE TABLE ",@temp_table_name," (id BIGINT(20), beneficiary_id BIGINT(20),appendedNoteDetails LONGTEXT,prog_type VARCHAR(255),
        program VARCHAR(255),date_created DATETIME, text VARCHAR(6000),type VARCHAR(255),division VARCHAR(255),initiative VARCHAR(255),recipientid VARCHAR(255),
        last_name VARCHAR(255), first_name VARCHAR(255), groupid VARCHAR(255), name VARCHAR(255), created_by VARCHAR(511),
        description VARCHAR(6000),date_of_contact DATETIME,call_status VARCHAR(255),type_of_contact VARCHAR(6000), rel VARCHAR(255),date_time_created DATETIME,visit_status VARCHAR(255),visit_location VARCHAR(255),call_purpose VARCHAR(255),activity VARCHAR(255),due_date DATETIME) ENGINE=MYISAM ");
        PREPARE stmt FROM @report_note_create;
        EXECUTE stmt;
        DEALLOCATE PREPARE stmt;

1 Ответ

0 голосов
/ 01 марта 2020

Ни у кого нет фамилии длиной 255 символов; выбрать разумный предел. То же самое для других столбцов. Кроме того, измените VARCHAR(6000) на TEXT.

. Если этого недостаточно, вернитесь, и мы сможем обсудить другие решения.

...