Tak, źle zrozumiałeś post. SQL jest przekazywany tak, jak jest i musi zawierać poprawny :param1
lub @param1
itp. „Brak prefiksu w ogóle „ mówi o kodzie, którego nie widzisz - konkretnie, upewniając się, że kod działa (poprzez jakiś mechanizm):
cmd.Parameters.Add("param1", 963);
w porównaniu z
cmd.Parameters.Add("@param1", 963);
w porównaniu z
cmd.Parameters.Add(":param1", 963);
Pierwsza (bez prefiksu) to prawidłowa i preferowana opcja.
Jeśli chcesz, aby kod SQL w Twoim kodzie był niezależny od parametrów, możesz użyć informacji z tego miejsca:Pobierz prefiks parametru w ADO.NET
Jednak SQL rzadko jest na tyle blisko, że samo wyszukanie prefiksu parametru rozwiąże wszystkie problemy.