1

我有多个数据损坏的表,如下所示:

Good data</title>and some random HTML<p></p><

我想做的只是在单元格中保留“良好数据”并删除其他所有内容。我以为我可以用 EF 创建一个小项目并用 C# 清理数据库,但可能只有 SQL 有更快的解决方案?您可以在 SQL 中使用正则表达式或某种子字符串函数吗?

我将手动查看表格并选择需要运行代码的字段,此时无需自动化。

4

2 回答 2

4
UPDATE dbo.SQLInjectionVictimTableName
  SET UnprotectedColumn = LEFT(UnprotectedColumn, CHARINDEX('<', UnprotectedColumn) - 1)
  WHERE UnprotectedColumn LIKE '%<%';
于 2013-08-22T21:05:54.647 回答
0

如果良好的数据始终紧随其后</,您可以使用:

UPDATE YourTable
SET BadField = LEFT(Badfield,CHARINDEX('</',BadField)-1)
WHERE CHARINDEX('</',Badfield) > 0
于 2013-08-22T21:06:05.507 回答