Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Przekaż tablicę jako wartość w ado.net DBParameter

W przypadku SQL-Server istnieją dwa typowe podejścia do tego. Trzecia opcja której należy unikać jest przekazanie varchar i połącz go w dynamiczną instrukcję SQL z IN - jest to wyraźna powierzchnia ataku wtrysku.

Rozsądne opcje:

  • przekaż varchar i użyj UDF, aby podzielić dane na ograniczniku (jak w tym pytaniu ), być może przecinek, kreska, tabulator itp. Połącz z wynikiem:

    SELECT something, anotherthing
    FROM atable a
    INNER JOIN dbo.SplitUDF(@values) udf
            ON udf.Value = a.something
    
  • użyj parametru wycenianego w tabeli (SQL2008) i dołącz bezpośrednio (unikaj UDF)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy uprawnienia do tabeli bazowej są automatycznie przekazywane do dowolnych widoków utworzonych w tabeli?

  2. Różne daty Oracle 11g z TOAD

  3. Jak rozwiązać błąd ORA-12516?

  4. Oracle JDBC:Skąd wiedzieć, który wiersz rzuca unikalne ograniczenie klucza?

  5. zapytanie, aby znaleźć wszystkie kolumny w tabeli bez wartości