数据库编程 技巧与经验(基于SQL)

1.MySQL创建数据表时设定引擎并添加外键约束

创建两个数据表,在它们之间添加外键约束,然后在被添加外键的表中添加数据,发现并没有提示报错,很正常地插入了数据,说明外键没有添加成功,在SQL可视化工具里查看表的属性,并点击外部键会出现弹窗,提示是因为引擎的问题,导致不能添加外键。MySQL安装时默认用的表引擎是MyISAM,而MyISAM是不支持外键的,如图,
引擎
要想解决这个问题,可以在当前的表设置引擎为InnoDB、PBXT或SolidDB,但这只是修改了这一个数据库,下次建新的数据库默认引擎还是MyISAM,我们可以在MySQL的安装目录下的配置文件my.ini中的 [mysqld] 下面加入default-storage-engine=INNODB(其他支持外键的引擎也可)保存,再重启Mysql服务器即可,小编在这块也遇到了问题,很久都没能解决,最后请教老师成功解决了。
可参考https://blog.csdn.net/renwudao24/article/details/52136955

以更改 Mysql 默认引擎为 InnoDB为例步骤如下:

  • 查看Mysql存储引擎情况: mysql>show engines,结果是: InnoDB | YES,说明此Mysql数据库服务器支持InnoDB引擎;
  • 设置InnoDB为默认引擎:在配置文件my.ini中的 [mysqld] 下面加入default-storage-engine=INNODB;
  • 重启Mysql服务器;
  • 登录Mysql数据库,mysql>show engines 如果出现 InnoDB |DEFAULT,则表示设置InnoDB为默认引擎成功。

2.

发布了51 篇原创文章 · 获赞 184 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/CUFEECR/article/details/103430520