› MySQL 5.5 Community Server
› MySQL 5.6 Community Server
› Percona Configuration Wizard
› XtraBackup 搭建主从复制
Great Sites on MySQL
› Percona
› MySQL Performance Blog
› Severalnines
推荐管理工具
› Sequel Pro
› phpMyAdmin
推荐书目
› MySQL Cookbook
MySQL 相关项目
› MariaDB
› Drizzle
参考文档
› http://mysql-python.sourceforge.net/MySQLdb.html
darasion
V2EX  ›  MySQL

要不要使用外键?

  •  
  •   darasion · Mar 13, 2013 · 9120 views
    This topic created in 4983 days ago, the information mentioned may be changed or developed.
    1. 要:
    保证数据完整性

    2. 不要:
    容易开发和维护
    16 replies  •  2016-04-15 12:15:20 +08:00
    workaholic
    workaholic
    Mar 13, 2013
    1
    看应用规模了,数据量太大就要考虑性能了
    pythonee
    pythonee
    Mar 13, 2013
    2
    我司没有用,完全拿数据库当NoSQL使,奶奶的
    zhuf
    zhuf
    Mar 13, 2013
    3
    不要
    zenwong
    zenwong
    Mar 13, 2013❤️1
    4
    个人认为外键这种东西是理想化情况下的东西,在实际开发中你可能遇到需求上的一些问题,使你无法理想化
    zerox
    zerox
    Mar 13, 2013
    5
    反正我司是不使用外键的,从头到尾没人提过这事,总的来说是有性能影响的,不用的话也没觉得有什么问题。ls说的好,外键是理想化情况下的东西
    zer4tul
    zer4tul
    Mar 16, 2013
    6
    数据规模小,要求开发效率的话,可以用。
    数据规模大的话就不要用了,对执行效率的影响挺大。另外就是dump出来source的时候麻烦。
    hilyjiang
    hilyjiang
    Mar 16, 2013❤️1
    7
    1. 要
    开发及测试环境使用,有助于保证生产环境中的数据完整性

    2. 不要
    生产环境中,考虑性能问题,可以删除外键约束
    zer4tul
    zer4tul
    Mar 16, 2013
    8
    @hilyjiang 开发和测试环境使用外键,但是生产环境不使用,怎样保证生产环境中的数据完整性?没看明白,求解释。
    atom
    atom
    Mar 16, 2013
    9
    我司也是从来不用外键,我司更看重事务。
    binjoo
    binjoo
    Mar 17, 2013
    10
    总感觉外键很麻烦。。
    saharabear
    saharabear
    Mar 17, 2013
    11
    咱们这里讨论问题不加前提条件的吗?

    银行,金融业务能不加外键吗?

    个别时候银行金融业务是开发过程用外键,运行环境部署删除外键。不过大部分都会强制主外键约束。

    互联网产品,就几个文章的东西,就算再复杂的文章,基本上为了性能,用冗余,不用外键。但有一些强约束的地方,就必须用外键。
    saharabear
    saharabear
    Mar 17, 2013
    12
    补充一下,银行和金融也不只是用DB2的,也有Oracle和MySQL。
    wd
    wd
    Mar 17, 2013
    13
    外键是用来限制数据完整性的(包括插入和删除的时候),如果你对这个要求没那么高,那么可以不要,还能节省一些性能。
    i36lib
    i36lib
    Apr 15, 2016
    15
    从 Oracle 企业实施套件( Oracle EBS )学来的经验,不用,只是在代码罗就里面保证这种约束。
    i36lib
    i36lib
    Apr 15, 2016
    16
    但是要求文档或者注释要及时跟上,不然难以维护。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1319 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 20:38 · PVG 04:38 · LAX 12:38 · JFK 15:38
    ♥ Do have faith in what you're doing.