dodání ihned! nové
Hledáme programátora do rostoucího týmu ITnetwork.cz, 100% home office, 100% flexibilní pracovní doba. Více informací
Black Friday je tu! Využij jedinečnou příležitost a získej až 80 % znalostí navíc zdarma! Více zde
BF

Diskuze: Použít proměnnou v SELECTU?

Aktivity
Avatar
Zbyněk Málek:20.4.2016 15:10

Můj kod je otázka sama o sobě... Nefunguje... Jak to mám udělat, abych mohl použít proměnnou cestu v SELECTU? Uvízl jsem na mrtvém bodě a nenapadá mě ani jedno řešení (jinej pokus se snažím řešit v předešlém vlákně...

USE master
GO
DECLARE @db VARCHAR(30)
SET @db = 'ODYSEA'
DROP TABLE ##user
DROP TABLE ##role
CREATE TABLE ##user (IDu int, [user] VARCHAR(50))
CREATE TABLE ##role (IDr int, [role] VARCHAR(50))
INSERT INTO ##user SELECT DISTINCT @db.[sys].[da­tabase_role_mem­bers].[member_prin­cipal_id],
[@db].[sys].[sy­susers].[name]
FROM [@db].[sys].[da­tabase_role_mem­bers]
JOIN [@db].[sys].[sy­susers]
ON [@db].[sys].[da­tabase_role_mem­bers].[member_prin­cipal_id] = [@db].[sys].[sy­susers].[UId]

INSERT INTO ##role SELECT DISTINCT @db.[sys].[da­tabase_role_mem­bers].[role_prin­cipal_id],
[@db].[sys].[sy­susers].[name]
FROM [@db].[sys].[da­tabase_role_mem­bers]
JOIN [@db].[sys].[sy­susers]
ON [@db].[sys].[da­tabase_role_mem­bers].[role_prin­cipal_id] = [@db].[sys].[sy­susers].[UId]

SELECT * FROM ##user
SELECT * FROM ##role
GO

 
Odpovědět
20.4.2016 15:10
Avatar
Robert Poč
Člen
Avatar
Robert Poč:21.4.2016 11:47

Slož dotaz jako řetězec a spusť přes execute např.

EXECUTE('SELECT * FROM [' + @user+ ']')

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět
21.4.2016 11:47
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Zbyněk Málek:21.4.2016 13:34

Jo... takto jsem vyřešil i onen problém s USE... ještě jsem našel cosi o sp_executeSQL mrknu na to... Díky za radu, teprve se učím

 
Nahoru Odpovědět
21.4.2016 13:34
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.