sql >> Databasteknik >  >> RDS >> Sqlserver

Hur man skickar ett kolumnnamnsvärde som SQL-argument med hjälp av platshållare

Det korta svaret är att du inte kan; parametrar stöds endast för värden , inte för kolumnnamn .

Du måste antingen falla tillbaka på direkt textinfogning som Richard har sagt (oavsett om detta sker i kod eller via användningen av SQL Server exec()-funktionen), eller använda något slags bibliotek (som LINQ) som låter dig konstruera frågor dynamiskt och konverterar det sedan till en textrepresentation.

Om du går vägen för direkt textinsättning, var mycket säker på att du inte tillåter att direkt användarinmatning infogas; gör någon form av översättning själv för att undvika SQL Injection-attacker.



  1. hur man använder LINQ till SQL med mySQL

  2. Importera data från csv-fil

  3. Hur man skickar flera kolumner till en variabel i php

  4. Hur testar man i och mellan var och en av flera tabeller?