Yii2之数据迁移和内部封装对数组等操作

本文探讨了如何通过将SQL更改纳入Git版本控制,确保团队协作时数据库结构一致性。方案二被推荐,强调了利用Git记录表结构变化,提高开发者对变更的认知,减少错误和上线bug。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一般项目中都有有个对于项目的SQL维护的一个文档;程序员们对增删改表结构都会记录到这个表中,但是会存在一个问题就是每次都需要记录,而且还有可能记录失误等最终导致上线后因为字段不存在等问题导致出bug;如何避免这个问题呢?最好的方案是使SQL的变化也记录到git仓库管理中,这样即使A程序员改了表结构,那么B程序员拉代码的时候可以知道变化;从而更新程序员本地的代码结构保持一致。那么如何让所有程序员都知道表结构变化呢?

方案一:记录到公共知识库,而已知识库中对每次分支版本都有对应的记录,以及修改的程序员名称和时间和修改的脚本语句等等,但是这个方案如何程序员们没有协商好,没看到记录修改,那么还是会有问题。而且修改的知识库最好可以看到每次修改的详细记录。否则很容易产生不愉快。

方案二:修改的语句通过命令的形式记录到git代码版本库,这样只要程序员拉取代码既可以看到变化,进而可以执行命令更新本地的数据库表结构等等,参考 数据库迁移;但是对于字段的变化建议 开发前充分考虑,不要随便删表;一般只做建表,修改表字段类型变长,新增字段这些即可,删除表这些恢复可能会有问题。

方案三:使用Navicat的工具-》同步表结构 ;在navicat配置定时同步表结构,虽然可以同步,但是不是最实时的,程序员也无感知哪些表等变化了,这样不利于全局考虑,无法发现是否对其他程序是否有关联影响。

综上:根据具体公司情况,推荐方案二

Yii2其实内部封装了很多对数组和字符串的处理的,不用我们再去写代码处理直接调用即可,记录一下 数组处理 ,比如下面的,二位数组更加一个键的值进行分组等 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值