重命名数据表中的行

本文关键字:数据表 重命名 | 更新日期: 2023-09-27 18:07:10

我目前正在使用一个第三方应用程序的数据库,该应用程序没有对我正在使用的列中的数据进行表单检查。我使用SqlDataReader(因为这不需要修改数据库中的现有表)将数据放入数据表并删除重复项,但是当我删除重复项时,由于不同的人错误地输入数据,我仍然留下了垃圾重复项。例如,

    苹果
  • :
  • 香蕉
  • BANNEAN
  • 猩猩
  • 等等…

我如何在数据表中纠正它们,使数据表中只有Apple, Orange等…

幸运的是,在这一列中只有几个不同的项目,并且都以不同的字符串开头,例如cen, cas,所以如果我能够改变所有以app

开头的项目

不幸的是,修改原始程序以在输入时检查数据是不可行的。

重命名数据表中的行

我想这个脚本会对你有帮助。

update [TableName]
set [ColumnName] = 'someName'
where [ColumnName] in 
(
select [ColumnName] from [TableName]
where [ColumnName] != 'someName'
and [ColumnName] != 'someName'
and [ColumnName] != 'someName'
and [ColumnName] != 'someName'
and [ColumnName] != 'someName'
)
--to be safe google "begin transaction" and how to "rollback" the changes

在更改了列的名称之后,您可以根据更改的名称删除该列。

delete [TableName]
where [ColumnName] = 'TheName'