我有多个表格,数据损坏如下:
Good data</title>and some random HTML<p></p><
我想要做的只是在单元格中保留“好数据”并删除其他所有内容。我以为我可以用EF创建一个小项目并使用C#清理数据库但是可能只有SQL的更快解决方案?你能在SQL中使用正则表达式或某种子串函数吗?
我将手动查看该表并选择需要运行代码的字段,此时无需自动执行该操作。
答案 0 :(得分:4)
UPDATE dbo.SQLInjectionVictimTableName
SET UnprotectedColumn = LEFT(UnprotectedColumn, CHARINDEX('<', UnprotectedColumn) - 1)
WHERE UnprotectedColumn LIKE '%<%';
答案 1 :(得分:0)
如果</
始终遵循良好数据,则可以使用:
UPDATE YourTable
SET BadField = LEFT(Badfield,CHARINDEX('</',BadField)-1)
WHERE CHARINDEX('</',Badfield) > 0