C# 如何从数据库中删除单词?

C# 如何从数据库中删除单词?,c#,asp.net,sql,database,C#,Asp.net,Sql,Database,我想知道如何使用c#从asp.net中的数据库中删除特定单词。例如,在数据库中有一个字符串等于“hello,something,google,andetc”,我想删除“something”这个词,怎么做 这是我连接数据库的代码: public void RemoveTag(string tag) { using(SqlConnection con = new SqlConnection(MyconnectionString)) { SqlCommand comma

我想知道如何使用c#从asp.net中的数据库中删除特定单词。例如,在数据库中有一个字符串等于“hello,something,google,andetc”,我想删除“something”这个词,怎么做

这是我连接数据库的代码:

public void RemoveTag(string tag)
{
    using(SqlConnection con = new SqlConnection(MyconnectionString))
    {
        SqlCommand command = new SqlCommand("What should be here", con);

        con.Open();
        command.ExecuteNonQuery();
        con.Close();
    }
}

此基本语句将满足您的需求:

UPDATE tablename SET column1 = REPLACE(column1, 'something', '')
但它不能去掉那个逗号。然而,如果逗号不一致的话,去掉它会有点棘手。假设它是一致的,你可以这样做:

UPDATE tablename SET column1 = REPLACE(column1, ',something', '')
或者这个:

UPDATE tablename SET column1 = REPLACE(column1, 'something,', '')
但如果不一致,您可能需要执行两个或三个覆盖语句:


从整个数据库?或者一个表,或者一个表中的一列,或者一个特定的记录?您到底需要什么?@Habib从一列中,假设表名为“text”,列名为“column1”]您使用的是什么数据库?SQL?首先,在文本中存储逗号分隔的字符串是非常糟糕的数据库关系设计,每个值都应该有一行。另外,只需查看
REPLACE()
UPDATE tablename SET column1 = REPLACE(column1, ',something', '')
UPDATE tablename SET column1 = REPLACE(column1, 'something,', '')
UPDATE tablename SET column1 = REPLACE(column1, 'something', '')