Types 在PostgreSQL中将数据类型“Varchar”更改为“TimeStamp”

Types 在PostgreSQL中将数据类型“Varchar”更改为“TimeStamp”,types,timestamp,varchar,sqldatatypes,Types,Timestamp,Varchar,Sqldatatypes,我的数据集包含一列,其中包含varchar数据类型中的日期和时间,如下所示: 04/23/2009 11:34:01 前面提到的列的数据类型是varchar,我想问一下如何将数据类型更改为timestamp。我将向表中添加一个目标类型的新的可空列 您可以尝试在对数据进行NAIEV分析的基础上填充列数据库 然后,您可以运行SELECT将原始日期字符串与新日期字符串进行比较,但也可以使用输出格式设置程序函数,使字符串保持一致。然后让SQL使用HAVING子句比较这两个值 一旦有了能够转换现有数据的解

我的数据集包含一列,其中包含varchar数据类型中的日期和时间,如下所示:

04/23/2009 11:34:01


前面提到的列的数据类型是varchar,我想问一下如何将数据类型更改为timestamp。

我将向表中添加一个目标类型的新的可空列

您可以尝试在对数据进行NAIEV分析的基础上填充列数据库

然后,您可以运行SELECT将原始日期字符串与新日期字符串进行比较,但也可以使用输出格式设置程序函数,使字符串保持一致。然后让SQL使用HAVING子句比较这两个值

一旦有了能够转换现有数据的解决方案

你应该努力改变策略。这可能需要对软件进行更改。这可以通过首先确保插入、更新的所有数据将在两列中保存数据来完成

然后对所有现有数据运行转换过程

此时,对数据库的所有更改都应保持旧列和新列的一致性。也许您需要审计/运行系统一段时间,以确保捕获所有内容,因为您现在可以随时重新运行比较/验证步骤

然后,您可以处理选定的用例。最后实际删除VARCHAR列

所有这些的要点是一个受控的逐步过程,其中有回滚选项,并在每次更改之间进行测试