Użyj następujących.
Aby dane wejściowe użytkownika były wyszukiwane w obecnej postaci, użyj klawisza Escape, ponieważ będzie wymagało następującej zamiany wszystkich znaków specjalnych (poniżej obejmuje cały SQL Server).
Tutaj pojedynczy cytat „” nie jest brany, ponieważ nie wpływa na klauzulę, ponieważ jest to kwestia łączenia łańcuchów.
Zastąpienie „-” i „^” i „]” nie jest wymagane, ponieważ uciekamy przed „[”.
String FormattedString = "UserString".Replace("ð","ðð").Replace("_", "ð_").Replace("%", "ð%").Replace("[", "ð[");
Następnie w zapytaniu SQL powinno wyglądać następująco. (W sparametryzowanym zapytaniu łańcuch można dodać ze wzorami po powyższej zamianie).
Aby wyszukać dokładny ciąg.
like 'FormattedString' ESCAPE 'ð'
Aby rozpocząć wyszukiwanie, wpisz ciąg
like '%FormattedString' ESCAPE 'ð'
Aby wyszukać, zakończ ciągiem
like 'FormattedString%' ESCAPE 'ð'
Aby wyszukać zawierają ciąg
like '%FormattedString%' ESCAPE 'ð'
i tak dalej w przypadku innego dopasowania wzorca. Ale bezpośrednie dane wejściowe użytkownika muszą zostać sformatowane, jak wspomniano powyżej.