【问题标题】:Alter table with adding Indexes to table [MariaDB]通过向表中添加索引来更改表 [MariaDB]
【发布时间】:2021-05-02 17:39:27
【问题描述】:

我有一个表,我试图在其中添加索引,但由于某种原因,它写出了一个错误。 我用MySQL Workbench 8.0.17,数据库是10.1.25-MariaDB

我使用工作台添加索引时遇到的错误如下:

这是我第一次尝试,所以我不知道我在这里做错了什么?

关于我的表的额外信息:我的一张表名为TestResults,它包含以下列:

然后我创建了一个表,将TestResults 和另一个名为testcaserequirement 的表链接在一起,这个表称为testresultsrequirementlink,每列都有两个表的ID。

在这里,我想将 requimrentIdtestresultId 设为 index 并在 testresultsrequirementlink.testresultIdtestresults.id 之间以及 @987654345 之间创建 外键 @ 和testcaserequirement.id

编辑

我查看了 MariaDB 语法,找到了两个示例,但是我的数据库在 sql 查询运行期间“丢失连接”?`

【问题讨论】:

标签: mariadb


【解决方案1】:

所以我发现了我的问题,MariaDB 的语法不同,我找不到正确的编写方法。但在 cmets 的帮助下,我发现了一些可行的方法。

#Create indexes
ALTER TABLE `testresultrequirementlink` 
ADD INDEX `navn` (`testresultId` );

#Create foreign keys
ALTER TABLE testresults ADD CONSTRAINT fk_testresultId FOREIGN KEY (id) REFERENCES testresultrequirementlink(testresultId);

我创建外键的问题是因为我的一个伙伴复制了一个signel测试,这导致了重复的id...

感谢您的帮助

【讨论】:

    猜你喜欢
    • 2018-10-17
    • 1970-01-01
    • 2019-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多