【问题标题】:Default values for varchar and int mysql data typesvarchar 和 int mysql 数据类型的默认值
【发布时间】:2012-05-23 05:39:36
【问题描述】:

截图显示了数据类型的 3 种典型定义:id(自动增量)、标题和数字。

1.- noneNULL 之间有哪些区别?
2.- 当我想要一个空字符串时,是否必须为 varchar 类型选择 as defined: ''
3.- 我必须为自动增量 int 类型设置一个as defined: 0 默认值吗?

【问题讨论】:

    标签: php mysql phpmyadmin default sqldatatypes


    【解决方案1】:

    Default none 表示没有默认值。如果插入时未提供值,则查询将失败并出现“无默认值错误”。

    NULL 是实际的 NULL 值,这意味着如果在插入时未提供任何值,则该列将默认为 NULL(空)。对于 varchar,您可以将默认值设置为 '',但 NULL 更好。

    Autoincrement int 类型不应该有默认值(默认值:None),因为它总是有一个值。

    【讨论】:

    • 为了进一步说明,要使用 NULL 作为默认值,列必须允许 NULL 值。
    • 对于整数类型NULL会插入0(零)吗?
    • 马库斯,你是对的 - “在插入时”我将编辑我的答案。
    • 另一个值得注意的有趣的事情是,如果您对列禁用 ALLOW NULL,并且您没有指定默认值 (NONE),它仍将使用类型的默认值(0 表示 INTEGER , '' for VARCHAR) 来替换 NULL 值。
    猜你喜欢
    • 2014-12-17
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 2016-09-14
    • 2023-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多