Openstack中更新表结构:修改表的某个字段使之可以为空
此例修改sfc中sfc_portpair_details中的local_endpoint字段,使之可以为空。
sfc_portpair_details原始表结构定义如下:
对应数据库的表结构如下:
我的表可能与大家默认的表不同,不过这里我们只关注local_endpoint字段。
为了修改这个字段,上网找了很多文章,发现要么不太适合,要么操作不生效,所以采用如下最笨或者最直接的方法,如果大家有更为有效可行的方法,希望大家多多指教,不胜感激。
我是采用升级数据库,然后在对应生成的文件中,采用sql语句直接操作数据库,如下:
1. 更新数据库,生成更新数据的文件
2. 修改生成的文件,执行sql语句
注:该sql语句:alter table sfc_portpair_details modify local_endpoint varchar(64) Null
修改模型:alter table 表名 modify 字段名 字段类型 Null/not Null
3.更新数据库:
至此,修改完成
现在我们来看一下表格的local_endpoint字段是否允许为空:
显然,修改生效。