0

嗨..我必须将以下字符串插入 Oracle DB:

    String StrDiv = "<div STYLE=" + "'"+"font-family: " + lblPreviewPane.Font.Name + "; font-size: " + lblPreviewPane.Font.Size + "; color: " + ColorPicker1.Color + ""+"'" + ">" + lblPreviewPane.Text + "</div>";

我在 StrDiv 中得到以下信息:

    "<div STYLE='font-family: Times New Roman; font-size: 8pt; color: #CC33CC'>TEXTSAMPLE</div>"

但问题是,当我将字符串插入 DB 时,会引发错误: ORA-00917: missing comma

这是因为 .

请指导我解决上述问题。

4

3 回答 3

3

您可以使用 SQLCommand 和 SQLCommand.Parameters 将 StrDiv 作为参数传递,应该没问题

小例子:

using (SqlCommand myCommand = new SqlCommand(
    "INSERT INTO table_name (column_name) VALUES (@StrDiv)")) {

    myCommand.Parameters.AddWithValue("@StrDiv", StrDiv);
    //...

    myConnection.Open();
    myCommand.ExecuteNonQuery();
    //...
}
于 2013-10-16T11:30:14.570 回答
1

只需在将数据插入数据库时"''"​​进行转义"'"

String StrDiv = "<div STYLE=" + "''"+"font-family: " + lblPreviewPane.Font.Name + "; font-size: " + lblPreviewPane.Font.Size + "; color: " + ColorPicker1.Color + ""+"''" + ">" + lblPreviewPane.Text + "</div>";


"<div STYLE=''font-family: Times New Roman; font-size: 8pt; color: #CC33CC''>TEXTSAMPLE</div>"
于 2013-10-16T11:24:30.843 回答
0

只需将您的单引号替换为两次单引号男士单引号两次。使用Replace("'","''")将单引号替换为双单引号。

于 2020-09-12T06:30:06.840 回答