小编spr*_*aff的帖子

为什么不启用 innodb 严格模式?

我尝试在/etc/mysql/mysql.conf.d/mysqld.cnf(Ubuntu)中添加这一行

innodb_strict_mode = 1
Run Code Online (Sandbox Code Playgroud)

这是在 [mysqld] 部分中,我在其他示例中看到了这一行。我知道这个配置文件正在启动时被读取,因为如果我输入无意义的内容,我会得到错误。

尽管如此, SHOW VARIABLES 将该变量列为 OFF 并且显然我可以在不指定非默认字段的情况下插入行。

为什么没有设置这个变量?

我试过=on代替=1,没有区别。否则,配置未从安装默认值 AFAIK 中修改,全文请点击此处

mysql

5
推荐指数
1
解决办法
2万
查看次数

MySQL select...into variable 产生 null,即使数据在那里

我的存储过程执行SELECT ... INTO var产生 NULL,但如果我SELECT自己重复相同的操作,我会得到一个值。

这是架构的相关部分

CREATE TABLE UrlAuthority
(
     id              BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY
    ,name            VARCHAR(255) NOT NULL COMMENT 'includes TLD suffix'
    ,UNIQUE(name)
)
ENGINE = INNODB DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;



CREATE TABLE UrlFqdn
(
     id              BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY
    ,authority       BIGINT NOT NULL COMMENT 'references example.com'
    ,name            VARCHAR(255) NOT NULL COMMENT 'host.example.com'
    ,FOREIGN KEY (authority) REFERENCES UrlAuthority (id)
    ,UNIQUE (authority, name)
)
ENGINE = INNODB DEFAULT CHARACTER SET …
Run Code Online (Sandbox Code Playgroud)

mysql

2
推荐指数
1
解决办法
5465
查看次数

标签 统计

mysql ×2