最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

數(shù)據(jù)庫查詢中遭遇特殊字符導致問題的解決方法

 更新時間:2007年12月20日 22:12:42   作者:  
數(shù)據(jù)庫查詢中遭遇特殊字符導致問題的解決方法,我們提供的是asp的,但其它的數(shù)據(jù)庫與語言下的解決方法也大同小異。
數(shù)據(jù)庫查詢中的特殊字符的問題
在進行數(shù)據(jù)庫的查詢時,會經(jīng)常遇到這樣的情況: 
  例如想在一個用戶數(shù)據(jù)庫中查詢他的用戶名和他的密碼,但恰好該用戶使用的名字和密碼中有特殊的
字符,例如單引號,“|”號,雙引號或者連字符“&”。 
  例如他的名字是1"test,密碼是A|&900 
  這時當你執(zhí)行以下的查詢語句時,肯定會報錯: 

SQL = "SELECT * FROM SecurityLevel WHERE UID="" & UserID & """ 
SQL = SQL & " AND PWD="" & Password & """ 
  因為你的SQL將會是這樣: 

SELECT * FROM SecurityLevel WHERE UID="1"test" AND PWD="A|&900" 

  在SQL中,"|"為分割字段用的,顯然會出錯了?,F(xiàn)在提供下面的幾個函數(shù)專門用來處理這些頭疼的東西數(shù)據(jù)庫 轉(zhuǎn)義字符:
復制代碼 代碼如下:

Function ReplaceStr (TextIn, ByVal SearchStr As String, _
ByVal Replacement As String, _
ByVal CompMode As Integer)
 Dim WorkText As String, Pointer As Integer
 If IsNull(TextIn) Then
  ReplaceStr = Null
 Else
  WorkText = TextIn
  Pointer = InStr(1, WorkText, SearchStr, CompMode)
  Do While Pointer > 0
   WorkText = Left(WorkText, Pointer - 1) & Replacement & _
   Mid(WorkText, Pointer + Len(SearchStr))
   Pointer = InStr(Pointer + Len(Replacement), WorkText, SearchStr, CompMode)
  Loop
  ReplaceStr = WorkText
 End If
End Function

Function SQLFixup(TextIn)
 SQLFixup = ReplaceStr(TextIn, """, """", 0)
End Function
Function JetSQLFixup(TextIn)
 Dim Temp
 Temp = ReplaceStr(TextIn, """, """", 0)
 JetSQLFixup = ReplaceStr(Temp, "|", "" & chr(124) & "", 0)
End Function

Function FindFirstFixup(TextIn)
 Dim Temp
 Temp = ReplaceStr(TextIn, """, "" & chr(39) & "", 0)
 FindFirstFixup = ReplaceStr(Temp, "|", "" & chr(124) & "", 0)
End Function

有了上面幾個函數(shù)后,當你在執(zhí)行一個sql前,請先使用 

SQL = "SELECT * FROM SecurityLevel WHERE UID="" & SQLFixup(UserID) & """ 
SQL = SQL & " AND PWD="" & SQLFixup(Password) & """ 

相關文章

  • SQL注入技巧之顯注與盲注中過濾逗號繞過詳析

    SQL注入技巧之顯注與盲注中過濾逗號繞過詳析

    SQL注入的繞過技巧有很多,下面這篇文章主要給大家介紹了關于SQL注入技巧之顯注與盲注中過濾逗號繞過的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2018-08-08
  • 深入SQL中PIVOT 行列轉(zhuǎn)換詳解

    深入SQL中PIVOT 行列轉(zhuǎn)換詳解

    T-SQL語句中,Pivot運算符用于在列和行之間對數(shù)據(jù)進行旋轉(zhuǎn)或透視轉(zhuǎn)換,PIVOT命令可以實現(xiàn)數(shù)據(jù)表的列轉(zhuǎn)行,同時執(zhí)行聚合運算,UNPIVOT則與其相反,實現(xiàn)數(shù)據(jù)的行轉(zhuǎn)列。
    2015-10-10
  • 如何用DeepSeek獲取數(shù)據(jù)庫中的表信息(表名和字段名稱)

    如何用DeepSeek獲取數(shù)據(jù)庫中的表信息(表名和字段名稱)

    這篇文章主要介紹了如何利用DeepSeek模型結(jié)合數(shù)據(jù)庫查詢,自動生成表結(jié)構(gòu)信息,通過自然語言描述,讓DeepSeek自動生成對應的SQL查詢,從而實現(xiàn)對數(shù)據(jù)庫結(jié)構(gòu)的智能化探索,需要的朋友可以參考下
    2025-02-02
  • DeveloperSharp?高效分頁使用詳解

    DeveloperSharp?高效分頁使用詳解

    這篇文章主要為大家介紹了DeveloperSharp?高效分頁使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • SQL注入漏洞掃描之sqlmap詳解

    SQL注入漏洞掃描之sqlmap詳解

    SQLMap是一款自動執(zhí)行SQL注入的審計工具,支持多種SQL注入技術(shù),包括布爾型盲注、時間型盲注、報錯型注入、聯(lián)合查詢注入和堆疊查詢注入
    2025-01-01
  • 一些關于數(shù)據(jù)存儲和查詢優(yōu)化的想法

    一些關于數(shù)據(jù)存儲和查詢優(yōu)化的想法

    今天咨詢了一下高手,關于數(shù)據(jù)存儲和查詢的問題,最終目的就是快,大家可以適當?shù)氖褂?/div> 2012-05-05
  • openGauss數(shù)據(jù)庫在CentOS上的安裝實踐記錄

    openGauss數(shù)據(jù)庫在CentOS上的安裝實踐記錄

    這篇文章主要介紹了openGauss數(shù)據(jù)庫在CentOS上的安裝實踐,本文是基于華為云ECS+CentOS 7的openGauss數(shù)據(jù)庫安裝實踐,需要的朋友可以參考下
    2022-07-07
  • 數(shù)據(jù)庫加密字段進行模糊查詢詳解

    數(shù)據(jù)庫加密字段進行模糊查詢詳解

    這篇文章主要為大家介紹了數(shù)據(jù)庫加密字段進行模糊查詢詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • SQL 按特定字段值排序

    SQL 按特定字段值排序

    SQL 按特定字段值排序的代碼,有需要的朋友可以參考下。
    2009-08-08
  • 一次因表變量導致SQL執(zhí)行效率變慢的實戰(zhàn)記錄

    一次因表變量導致SQL執(zhí)行效率變慢的實戰(zhàn)記錄

    這篇文章主要給大家介紹了一次因表變量導致SQL執(zhí)行效率變慢的實戰(zhàn)記錄,本文通過圖文以及示例代碼介紹的非常詳細,對大家學習或者了解sql具有一定的參考學習價值,需要的朋友可以參考下
    2021-11-11

最新評論

剑河县| 古蔺县| 彰化市| 华容县| 苗栗市| 苗栗县| 桃园县| 磐安县| 兴业县| 陆川县| 肥城市| 临沂市| 巴林右旗| 汶上县| 浙江省| 井冈山市| 三台县| 龙岩市| 长乐市| 扶沟县| 东乌珠穆沁旗| 南郑县| 德兴市| 浮梁县| 张掖市| 青龙| 紫云| 佛坪县| 合肥市| 滦南县| 麟游县| 阳西县| 政和县| 桂林市| 台安县| 新田县| 卓资县| 化州市| 沂水县| 晋宁县| 石景山区|