2011-09-30 160 views
0

的查詢字符串我在查詢數據庫中的某些數據並插入數據。每當用戶插入'我有一個問題,查詢不regconize。無法識別包含'

我該如何擺脫?我應該使用:string.replace(''', '"')?或任何其他伎倆?

在此先感謝。

+2

使用存儲過程,如果不能,請考慮防止SQL注入。 –

+4

你應該使用參數化查詢。顯示你現在的創建命令/ sql字符串的方式,我們會建議一些東西。這是SQL Server和C#嗎? –

回答

2

除了什麼Xavi López已發佈(和你真的應該記住這一點),以在字符串中的單引號,你需要寫兩個單引號,例如:

myString := 'I''m writing an answer'; 

這表示字符串I'm writing an answer

4

您應該使用參數化查詢。它是dangerous在查詢中插入未經處理的用戶輸入,它是SQL-Injection攻擊的開門。

這些都是形式

SELECT * FROM USERS where USER_ID = ? 

?的值與query.setString(1, userId)調用編程設置的查詢,司機需要照顧正確逃避一切。這不是你想要肩負的負擔。