Próbuję wysłać zapytanie do określonego wiersza według nazwy w mojej bazie danych sql i ma ampersand. Próbowałem ustawić znak ucieczki, a następnie uciec przed ampersandem, ale z jakiegoś powodu to nie działa i nie jestem pewien, na czym dokładnie polega mój problem.
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);
Chociaż daje to podobne rozwiązanie tego pytania , problemy są postawione bardzo różnie. Mogą skończyć z tym samym rozwiązaniem, ale to nie znaczy, że pytania są takie same.
set define off
to najprostszy sposób na zrobienie tego.