为了保证数据库的一致性,我想批量设置每个表的最后一列的类型为TINYINT(1) UNSIGNED NOT NULL
.
我发现了如何遍历表并定位最后一列,更改其类型并设置NOT NULL
标志,但我找不到如何设置UNSIGNED
标志。
我都试过了:
column = grt.root.wb.doc.physicalModels[0].catalog.schemata[0].tables[1].columns[7]
column.flags = ['UNSIGNED']
column.simpleType.flags = ['UNSIGNED']
但我得到一个TypeError: flag is read-only
. UNSIGNED
我还尝试将列的 dataType 属性设置为对具有标志(通过 GUI 定义)的列的 dataType 属性的引用。
最后我尝试了:
column.setParseType('TINYINT(1) UNSIGNED')
但它返回 0 并且不会改变任何东西(如果我删除它会返回 1,UNSIGNED
所以我认为它不适用于标志)。
有没有办法在 MySQL Workbench 中使用 Python 脚本更改列标志(即: UNSIGNED
、 )?ZEROFILL