сохранение данных base64 - слишком большой размер строки - PullRequest
2 голосов
/ 22 ноября 2011

У меня 22 поля базы данных типа longtext.Если я пытаюсь сохранить 12 полей со следующими данными, я получаю следующее сообщение об ошибке:

#1118 - Row size too large. The maximum row size for the used table type, not     
counting BLOBs, is 8126. You have to change some columns to TEXT or BLOBs 

Это нормально, если я сохраню только 11 полей.Вот данные:

BYOkQoFxB5+S8VH8svilSI/hQCUDlh1wGhyHacxjNpShUKlGJJ5HZ1DQTKGexBaP65zeJksfOnvBloCSbVmNgYxQhaQHn7sJlKjwtC00X/me2K8Vs4I9cL9SZx58Q2iXXQBbJYaAhn0LaEJMUN0P7VWd0/MiKgXsJt0UiXBf7Rlo6JIooBlaf59zA+II1o3MJKmzyH4q7C1qm2bC0LIT79ZCWDDSdqQaKZ1k1gPMu+yDYQPjrNiQUW29K/AdJ/XpPHT50jaJUjoMv9fL2TK0bUMO0VGe+0Cf4j0BE3QHlFnHqdgnLCTWk8NVo5U4Y5XTObsZtWwd1wHFZNIatuvg0cQk6WHojx3H9HavxKs9JJWYp8eCywyLhjmF39jMoZRT4n8fSTGDGif2q3VJE7DQrmQTjyQkSl9yUWvcTTUHAyNRYKnthVbgbzOOhEvhOZPuD4h+dcGyiW/xk+Lvu2XqkMDBIBuLcKymrdhefi4DElpuwyKFH7DNt6Y3fllPN/0XuSF0YXPqnBDLUcZsMqdzWPZX4RoVza/0Do+mHejYUSYnhsFWtPUHlTnU6fojBqw0icoKqhwjcIVpZmATwgYwXclsSwqEBWm9q9DMNzXG73bq6bs29BKq3E9S/fxo9Bz3mThNaj33fhyD4mj8indAIQeLVWvW3dq4T8+0lao6Ll0=

Как я могу решить проблему?Как я могу увеличить байты размера строки, чтобы он был больше, чем 8126?

Ответы [ 2 ]

3 голосов
/ 22 ноября 2011

Проблема заключается в ограничении размера строки для таблиц InnoDB, в этих ссылках вы можете найти несколько подходов для решения этой проблемы:

1 голос
/ 03 декабря 2012

Столбцы типа Varchar, text и blob не включены в ограничение размера строки innodb, поэтому если у вас много столбцов, которых нет, вы можете получить эту ошибку.

У меня был груз char (1), который я изменил на varchar, и это хорошо решило проблему

...