【问题标题】:Maximum number of columns / values you can INSERT INTO a table - mysql您可以插入表的最大列数/值 - mysql
【发布时间】:2010-08-08 22:27:19
【问题描述】:

有谁知道你可以插入一个表(mysql)的最大列数/值是多少?我收到一个错误... IDK... 20 列/值? (是的,#_of_col = #no_of_val)

INSERT INTO comenzi (a,b,c,d,e,f,...) 
VALUES (1,2,3,4,5,6,...)

【问题讨论】:

    标签: mysql insert-into


    【解决方案1】:

    硬限制是每个表 4096 列,最大行大小为 65,535 字节(来源:MySQL Documentation)。

    【讨论】:

    • +1 用于实际回答问题。从谷歌找到这个问题的人会很感激。 :)
    • @Mark ... 和 +1 用于理解和修复 OP 的问题,无需太多输入。 @nush 肯定很感激 :)
    【解决方案2】:

    一个表中可以有超过 20 列,所以我认为这不是你的问题。

    您的值列表中的列数很可能有误,或者您的列名之一是关键字。

    您说您已经检查了值的数量是否正确。根据我的经验,用手数 20 件东西是非常困难的,因此您可能需要仔细检查您的数是否正确。

    但假设这不是问题,那么我猜这可能是因为您的列名之一是保留关键字。用反引号将列名括起来可以防止它们被错误地解析:

    INSERT INTO comenzi (`a`, `b`, `c`, `d`, `e`, `f`, ...) 
    VALUES (1, 2, 3, 4, 5, 6, ...)
    

    如果你的值列表中有任何字符串,你还应该确保它们被引用并在必要时正确转义。

    【讨论】:

    • “做到了”我的意思是“在 `` 中包装列名成功了”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 2017-11-07
    • 1970-01-01
    • 2013-03-17
    • 1970-01-01
    相关资源
    最近更新 更多