我想在我的sql數據庫中按名稱查詢某個行,並且它有一個&符。我試圖設置一個轉義字符,然後轉義符號,但由於某種原因,這是行不通的,我不確定我的問題是什麼。SQL字符串中的轉義符號字符
Set escape '\'
select * from V1144engine.T_nodes where node_id in(
select node2_id from V1144engine.T_edges where node1_id in(
select node2_id from V1144engine.T_edges where node1_id in(
select node2_id from V1144engine.T_edges where node1_id =
(select node_id from V1144engine.T_nodes where node_name = 'Geometric Vectors \& Matrices')))
and edge_type_id = 1)
and node_type_id = 1
and node_id in (
select node2_id from V1144engine.T_edges where node1_id =
(select node_id from V1144engine.T_nodes where node_name = 'Algebra II')
and edge_type_id = 2);
雖然這與this question具有類似的解決方案,但問題卻有很大不同。他們最終可能會得到同樣的解決方案,但這並不意味着問題是相同的。
我不認爲你需要圍繞escape('\')字符引用 – mcalex
'set define off'是最簡單的方法。 – Annjawn
Duplicate http://stackoverflow.com/questions/118190/how-do-i-ignore-ampersands-in-a-sql-script-running-from-sql-plus – LordScree