0
已解決:正在從具有html編碼的GridView中讀取數據。該解決方案是以下... 昏暗Sht_Text的String = HttpUtility.HtmlDecode(row.Cells.Item(0)。文本)無法在參數化查詢中跳過撇號/特殊字符
我想不必逃避撇號和其它特殊字符,以防止我的字符串變量通過使用OleDbConnection
的參數化查詢。我有所有的參數在同一順序,插入工作,它只是不維護字符。我不斷收到那些討厭的html代碼。任何幫助,將不勝感激。我試圖從網頁插入Access數據庫。正如我所說的,它的工作,只是不是特殊字符。
下面的代碼:
Dim pConn As New OleDb.OleDbConnection pConn = New OleDbConnection(cb.ConnectionString)
Dim SqlString As String = "INSERT INTO Strings (Mlt_String_ID, Lng_ID, Strg_Name, Sht_Text, Lng_Text, Alt_Text) Values (?, ?, ?, ?, ?, ?)"
Using cmd As New OleDbCommand(SqlString, pConn)
cmd.CommandType = CommandType.Text
cmd.Parameters.AddWithValue("@Mlt_String_ID", Mlt_String_ID)
cmd.Parameters.AddWithValue("@Lng_ID", Lng_ID)
cmd.Parameters.AddWithValue("@Strg_Name", Strg_Name)
cmd.Parameters.AddWithValue("@Sht_Text", Sht_Text)
cmd.Parameters.AddWithValue("@Lng_Text", Lng_Text)
cmd.Parameters.AddWithValue("@Alt_Text", Alt_Text)
pConn.Open()
cmd.ExecuteNonQuery()
pConn.Close()
End Using
更新例子:這是直接從後插入的訪問表。
String_ID String_Name Long_Text Short_Text Alternate_Text Multi_String_ID Lang
993 U_°C_fr °C °C °C 651 fr
652 U_°C_jp °C °C °C 651 jp
651 U_°C °C °C °C 651 en
jp和en記錄已經存在,fr記錄的插入爲表示度符號的小圓圈推送html代碼。也適用於所有其他特殊字符。
你說你「不斷收到那些討厭的html代碼」 - 你得到的錯誤是什麼?你如何運行這個VB.NET代碼? (因爲聽起來好像有一個網站/服務器涉及到某個地方,如果你得到與HTML相關的問題。) – bouteillebleu
你能提供一個你正在談論的html代碼的例子嗎?插入語句的結果示例將有助於進行故障排除。 – JOpuckman
請參閱更新後的帖子。 – htm11h