Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

SQL - Variable als Spaltenname?

Frage Entwicklung Datenbanken

Mitglied: filippg

filippg (Level 3) - Jetzt verbinden

20.08.2008, aktualisiert 16:03 Uhr, 13437 Aufrufe, 2 Kommentare

Hallo,

ich habe ein einem MSSQL 2005 eine Tabelle mit etlichen Spalten. Nun habe ich eine Funktion, die eine bestimmte Zeile auswählt, und von dieser den Wert einer Spalte zurückliefern soll. Der Spaltennamen wird der Funktion in einer Variable übergeben.
Ich hatte mir das so vorgestellt:
SET @943 = (SELECT @spaltenname FROM Tabelle where <Bedingungen zur Zeilenauswahl>)

Leider führt das dazu, dass nachher @943 den Wert aus @spaltenname hat (also "Spalte1" etwa), und nicht den Wert der Spalte.
Wie kann ich das ändern? Wäre für schnelle Hilfe dankbar!

Gruß

Filipp
Mitglied: SlainteMhath
20.08.2008 um 11:25 Uhr
Hi,

versuchs mal so

01.
exec 'SET @Wert=(SELECT [' + @spaltenname + '] FROM tabelle WHERE ...)'
lg,
Slainte
Bitte warten ..
Mitglied: filippg
20.08.2008 um 16:03 Uhr
Hallo,

ein solches Konstrukt habe ich schon ausprobiert, das will er nicht. Könnte von der Fehlermeldung her daran liegen, dass es eine gespeicherte Funktion ist.

Momentan habe ich es über ein CASE gelöst:
SELECT CASE @spaltenname WHEN 'abc' THEN abc WHEN 'bcd' THEN bcd END FROM...
Nicht wirklich elegant. Aber er kann zur Speicherzeit prüfen, ob die Spalten wirklich existieren.

Gruß

Filipp
Bitte warten ..
Ähnliche Inhalte
VB for Applications
Anpassungsdatei verschiedene Parameter (Hostname, SQL, Registry) ändern (3)

Frage von MiMa89 zum Thema VB for Applications ...

Backup
Veeam Endpoint Backup findet SQL Datenbank nicht (1)

Frage von FFSephiroth zum Thema Backup ...

Datenbanken
gelöst Access 2010 SQL Tabellen Datensätze einfügen (6)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Windows Server
Sql server 2014 installation auf einer windows server 2012r2 vm (5)

Frage von meister00 zum Thema Windows Server ...

Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (12)

Frage von planetIT2016 zum Thema Windows Server ...

Festplatten, SSD, Raid
gelöst Fehlerhafte Blöcke im RAID 10 (12)

Frage von Kojak-LE zum Thema Festplatten, SSD, Raid ...

Netzwerkgrundlagen
gelöst Cisco SG500 Series LAG hat sich von selbst umgestellt (11)

Frage von Ex0r2k16 zum Thema Netzwerkgrundlagen ...