在同一张表中,我必须将一列的值迁移到新的一列;我想创建一个新列,用其他列的值填充它并删除已迁移的旧列,只有在尚未创建新列时才会发生这种情况。
<changeSet author="xxxx" id="00021">
<preConditions onFail="MARK_RAN">
<not>
<columnExists schemaName="schema" tableName="talbee" columnName="new_table"/>
</not>
</preConditions>
<addColumn schemaName="schema" tableName="new_table">
<column name="new_column" type="text"/>
</addColumn>
<sql>UPDATE table_name SET new_column = old_column</sql>
<dropColumn
catalogName="cat"
columnName="old_column"
schemaName="schema"
tableName="table_name">
<column name="old_column"/>
</dropColumn>
</changeSet>
Run Code Online (Sandbox Code Playgroud)
我删除旧列的方式是否正确?
只重命名该列会更好吗?
我尝试了一个简单的练习,将时间从12转换到24,低于我的代码:
String result = LocalTime.parse(time, DateTimeFormatter.ofPattern("hh:mm:ssa")).toString();
System.out.println("result = " + result);
Run Code Online (Sandbox Code Playgroud)
问题是当秒为0时方法截断秒,例如时间为12:00:00 AM,结果为00:00,我希望它为00:00:00.
谢谢.