gpt4 book ai didi

mySql 插入需要记录所有列

转载 作者:行者123 更新时间:2023-11-29 08:02:05 24 4
gpt4 key购买 nike

我最近开始托管自己的网站和 mySQL 数据库。一切工作正常,但每当我对任何表进行插入或更新时,如果我不调用每一列,就会出错。表或数据库是否有控制它的设置?我以前的数据库主机从来不需要这样做。

谢谢。

最佳答案

有多种方法可以编写 INSERT 查询。

  1. INSERT INTO 表名 (col1, col2, ...) VALUES (val1, val2, ...)

  2. INSERT INTO 表名 (col1, col2, ...) SELECT ...

  3. INSERT INTO 表名 VALUES (val1, val2, ...)

  4. INSERT INTO 表名 SELECT ...

在前两种方法中,您不必列出所有列,因为您明确指定了要填充的列。不在 (col1, col2, ...) 列表中的列将获取其默认值。 VALUES 列表或 SELECT 查询必须返回您在列表中指定的列数。

在方法 3 和 4 中,MySQL 要求 VALUES 列表或 SELECT 查询返回与表包含的列一样多的列,并且它们的顺序必须相同作为表定义。我在这些方法中找不到任何禁用列计数检查的设置。

在方法 1 和 3 中,您可以使用关键字 DEFAULT 代替任何列值以插入其默认值。

如果您的服务器处于 STRICT 模式,您还必须显式设置架构中没有 DEFAULT 选项的任何列。如果不是严格模式,将使用自动默认值。

关于mySql 插入需要记录所有列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23549300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com