sql >> Database teknologi >  >> RDS >> Oracle

Send et array som værdi i et ado.net DBParameter

For SQL-Server er der to almindelige tilgange til dette. Den tredje mulighed skal undgås er at indsætte en varchar og sammenkæde den til en dynamisk SQL-sætning med IN - dette er en klar injektionsangrebsoverflade.

Rimelige muligheder:

  • indgive en varchar og brug en UDF til at opdele dataene på et skilletegn (som i dette spørgsmål ), måske komma, pipe, tabulator osv. Deltag i resultatet:

    SELECT something, anotherthing
    FROM atable a
    INNER JOIN dbo.SplitUDF(@values) udf
            ON udf.Value = a.something
    
  • brug en table-valued-parameter (SQL2008) og deltag direkte (undgå UDF)


  1. Medbring din egen sky tilgængelig for DigitalOcean

  2. Sådan ændres begrænsning

  3. Laravel 5.1 Migration og seeding Kan ikke afkorte en tabel, der henvises til i en fremmednøglebegrænsning

  4. Top MySQL-blogs og -websteder for databaseadministratorer