2

我有 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?

4

2 回答 2

3

问题是 InnoDB 表的行大小限制,在这个链接中你可以找到一些解决这个问题的方法:

于 2011-11-22T02:09:04.807 回答
1

Varchar、text 和 blob 类型的列不包含在 innodb 行大小限制中。因此,如果您有很多列不包含在内,则可能会出现该错误。

我有大量的 char(1),我改为 varchar,它很好地解决了这个问题

于 2012-12-03T13:05:32.983 回答