ďťż
 
Sql Serv 2000 - String z lista parametrem funkcji ? ďťż
 
Sql Serv 2000 - String z lista parametrem funkcji ?
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Sql Serv 2000 - String z lista parametrem funkcji ?



kubik - 16-05-2006 00:15
Sql Serv 2000 - String z lista parametrem funkcji ?
  Witam

Mam zmienna stringowa z lista wartosci po przecinkach np 2,36,9,1.
Chcialbym przekazac ten string jako parametr do funkcji uzytkownika na
serwrze tak abym mogl wykonac zapytanie np select * from miasta where
idmiasta in (2,36,9,1)

Czy tak sie da ? Bardzo prosze o pomoc.

Pozdrawiam
kubik





Sebastian - 16-05-2006 00:15

 
> Mam zmienna stringowa z lista wartosci po przecinkach np 2,36,9,1.
> Chcialbym przekazac ten string jako parametr do funkcji uzytkownika na
> serwrze tak abym mogl wykonac zapytanie np select * from miasta where
> idmiasta in (2,36,9,1)
>
> Czy tak sie da ? Bardzo prosze o pomoc.

Pewnie ze sie da. Nalezy wykorzystac dynamicznego SQL-a i wygladaloby to
mniej wiecej tak

EXEC 'select * from miasta where idmiasta in ('+@zmienna+')'

Sebastian




Grzegorz Danowski - 16-05-2006 01:16

  Użytkownik "Sebastian" <sfilinowiczUSUN_TEN_TEKST@magma-net.pl> napisał w
wiadomości news:e4aru4$3c3$1@bandai.magma-net.pl...
>
>> Mam zmienna stringowa z lista wartosci po przecinkach np 2,36,9,1.
>> Chcialbym przekazac ten string jako parametr do funkcji uzytkownika na
>> serwrze tak abym mogl wykonac zapytanie np select * from miasta where
>> idmiasta in (2,36,9,1)
>>
>> Czy tak sie da ? Bardzo prosze o pomoc.
>
> Pewnie ze sie da. Nalezy wykorzystac dynamicznego SQL-a i wygladaloby to
> mniej wiecej tak
>
> EXEC 'select * from miasta where idmiasta in ('+@zmienna+')'
>

Nie jest to bynajmniej jedyne ani też najlepsze rozwiązanie. Polecam
artykuł: http://www.sommarskog.se/arrays-in-sql.html

Pozdrawiam
Grzegorz




Grzesiek G. - 17-05-2006 00:40

  Sebastian napisał(a):
>>Mam zmienna stringowa z lista wartosci po przecinkach np 2,36,9,1.
>>Chcialbym przekazac ten string jako parametr do funkcji uzytkownika na
>>serwrze tak abym mogl wykonac zapytanie np select * from miasta where
>>idmiasta in (2,36,9,1)
>>
>>Czy tak sie da ? Bardzo prosze o pomoc.
>
>
> Pewnie ze sie da. Nalezy wykorzystac dynamicznego SQL-a i wygladaloby to
> mniej wiecej tak
>
> EXEC 'select * from miasta where idmiasta in ('+@zmienna+')'

To jest rozwiązanie, gdyby chodziło o procedurę. Z tego co pamiętam, w
funkcjach użytkownika nie można stosować dynamicznego SQLa.

Może przeparsowanie stringa do zmiennej tablicowej się uda?

--
Grzegorz Gruza
Odpowiadając usuń "spamerom_nie." z adresu!!!





kubik - 17-05-2006 00:40

  Dziekuje za podpowiedzi

Pozdrawiam
Kubik
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    jak to =?ISO-8859-2?Q?zrobi=E6=2E=2E=2E=3F_TSQL_sql_server?==?ISO-8859-2?Q?_?= Jak =?windows-1250?Q?pobra=E6_szacowan=B9_wielko=9C=E6_zbiory_wy nikowego_w_MS?==?windows-1250?Q?_SQL_2005=3F?= [MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?= =?ISO-8859-2?Q?k=B3opot_z_uruchomieniem_MY_SQL_dla_C?==?ISO-8859-2?Q?MS_i_CRM_na_Fedora_Core_3?= Oracle PL/SQL Wstawianie =?ISO-8859-2?Q?wynik=F3w_kolekcji_d?==?ISO-8859-2?Q?o_tabeli?= [MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?= =?iso-8859-2?Q?=5Bmssql=5D_Zapytania_rekurencyjne__-_czy_sk=B3adnia_sql?==?iso-8859-2?Q?_co=B6_takiego_przewiduje_=3F?= [Oracle PL/SQL] Cursor i zapis =?ISO-8859-2?Q?rekord=F3w_do_?==?ISO-8859-2?Q?kolejnych_plik=F3w?= =?iso-8859-2?Q?=5BMySQL=5D_Co_minimalnie_potrzebne_zeby_mie=E 6_klienta_My?==?iso-8859-2?Q?SQL_na_Linuxie=3F?= [newbie] MS SQL - praca =?ISO-8859-2?Q?jednocze=B6nie_na_2_?==?ISO-8859-2?Q?bazach_=28linkowanie_=3F=29?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • own-team.pev.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com