Article View: pl.comp.bazy-danych
Article #195612Re: Dziwne zmienne w MS-SQL
From: Adam
Date: Mon, 18 Jun 2018 10:21
Date: Mon, 18 Jun 2018 10:21
41 lines
2407 bytes
2407 bytes
W dniu 2018-06-17 o 21:06, ydziO pisze:
> On 2018-06-16 10:45:46 +0000, Adam said:
>
>> Dlaczego więc nie działa tu:
>> select * from @TaBelKa
>
> Kiedyś chciałem zrobić coś podobnego.
> Masz błąd ponieważ dla Management Studio zmienna musi być tabelą, bo ze
> zmiennej chcesz zrobic select.
>
> Musisz zrobić tak:
>
> EXEC('SELECT * FROM ' + @TaBelKa)
>
> A opisane masz to tutaj:
> https://stackoverflow.com/questions/2838490/table-name-as-variable
>
To ja wiem, dzięki za linka.
Tylko wydawało mi się, że nazwa tabeli jest stringiem, i powinna
"działać" jak string, czyli dawać się wołać ze zmiennej typu string.
Tak, jak pisałem wcześniej - przy większych zapytaniach, można się
pomylić, gdyż w MS brak jest kontroli poprawności, a zapytanie wołane
przez EXEC jest traktowane jako string.
Co prawda raz tylko miałem taki problem - klient zauważył, że w pewnych
specyficznych sytuacjach raport źle mu się liczy. A szukanie czegoś w
czyimś dość zagmatwanym kodzie nie jest proste, zwłaszcza, że zmiennych
było multum o nie znaczących ale podobnych nazwach. Listing zaś miał
kilkanaście stron.
Ech, ograniczenia MS-SQL :(
Czasami mam wrażenie, że sporo rzeczy nie można zrobić w SQL spośród
tego, co było w Dbase.
--
Pozdrawiam.
Adam
Technical Details
Message-ID:
<pg813c$2dr$1$Adam@news.chmurka.net>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.ent22.internetdsl.tpnet.pl!not-for-mailReferences:
<pg0f08$vgn$1$Adam@news.chmurka.net> <5b23e33e$0$589$65785112@news.neostrada.pl> <pg2pop$u93$1$Adam@news.chmurka.net> <5b26b142$0$679$65785112@news.neostrada.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.ent22.internetdsl.tpnet.pl!not-for-mail From: Adam <a.g@poczta.onet.pl> Newsgroups: pl.comp.bazy-danych Subject: Re: Dziwne zmienne w MS-SQL Date: Mon, 18 Jun 2018 12:21:34 +0200 Organization: news.chmurka.net Message-ID: <pg813c$2dr$1$Adam@news.chmurka.net> References: <pg0f08$vgn$1$Adam@news.chmurka.net> <5b23e33e$0$589$65785112@news.neostrada.pl> <pg2pop$u93$1$Adam@news.chmurka.net> <5b26b142$0$679$65785112@news.neostrada.pl> NNTP-Posting-Host: ent22.internetdsl.tpnet.pl Mime-Version: 1.0 Injection-Date: Mon, 18 Jun 2018 10:21:32 +0000 (UTC) Injection-Info: news.chmurka.net; posting-account="Adam"; posting-host="ent22.internetdsl.tpnet.pl:83.15.205.22"; logging-data="2491"; mail-complaints-to="abuse-news.(at).chmurka.net" User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 In-Reply-To: <5b26b142$0$679$65785112@news.neostrada.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit