2011-12-01 71 views

回答

56

雙撇號:

'he doesn''t work for me' 
+3

如果您是從程序後端執行此操作,請使用參數化查詢。您實際上看到在這裏發生SQL注入攻擊。 – Andrew

3

試試這個

INSERT INTO exampleTbl VALUES('he doesn''t work for me') 
7
INSERT INTO exampleTbl VALUES('he doesn''t work for me') 

如果你通過ASP.NET添加記錄,您可以使用的SqlParameter對象的值傳遞,所以你不必擔心用戶輸入的撇號。

-3

如果要顯示爲'\',則可以使用反斜槓'\'在你的文字中引用單引號。

INSERT INTO exampleTbl VALUES('He doesn(\')t');

+0

在' – Hoque

+1

反斜槓附近需要的開放括號是否不正確的方式來逃避SQL Server –

-2

是的,由於SQL注入攻擊,sql服務器不允許在表字段中插入單引號。所以我們必須在保存時加倍替換單一的appostrophe。

(他不爲我工作)必須=>(他那並不爲我工作)

+4

「SQL服務器不允許在表字段中插入單引號由於SQL注入攻擊」不是一個正確的理解。 –

0
$value = "he doesn't work for me"; 

$new_value = str_replace("'", "''", "$value"); // it looks like " ' " , " ' ' " 

INSERT INTO exampleTbl (`column`) VALUES('$new_value') 
+0

這不是關於PHP,而是關於SQL的具體內容 – Bono

-1
insert into table1 values("sunil''s book",123,99382932938); 

使用雙撇號單引號內, 將工作