ďťż
 
Zapytanie jako string, FB ďťż
 
Zapytanie jako string, FB
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

Zapytanie jako string, FB



R2r - 10-09-2006 00:14
Zapytanie jako string, FB
  Witam,

Próbuje przypisac do zmiennej s1 select jako string.

s1='((select sum((temp1.pz+temp1.mmp)-(temp1.wz+temp1.mmr)) from temp1
where temp1.data <= ''2'' and temp1.id_t = cast(' || :towar_wz || ' as
int) and temp1.id_g=''1'' and temp1.id_m=''2'' )+(select
sum((temp1.pz+temp1.mmp)-(temp1.wz+temp1.mmr)) from temp1 where
temp1.data <= ''1'' and temp1.id_t= ''2'' and temp1.id_g=''1'' and
temp1.id_m=''2'')) ';

I wszystko dziala w porzadku dopóki nie podaje zmiennej w tym
zapytaniu. Jesli podam zmienna, w tym przypadku jest to zmienna
:towar_wz, która jest integer'em, dostaje blad: 'query empty'.

Pewnie to jakis glupi blad, albo przeoczenie.

Z góry wielkie dzieki za pomoc.

Pozdrawiam,
R2r





wloochacz - 10-09-2006 00:14

  > Próbuje przypisac do zmiennej s1 select jako string.
>
> s1='((select sum((temp1.pz+temp1.mmp)-(temp1.wz+temp1.mmr)) from temp1
> where temp1.data <= ''2'' and temp1.id_t = cast(' || :towar_wz || ' as
> int) and temp1.id_g=''1'' and temp1.id_m=''2'' )+(select
> sum((temp1.pz+temp1.mmp)-(temp1.wz+temp1.mmr)) from temp1 where
> temp1.data <= ''1'' and temp1.id_t= ''2'' and temp1.id_g=''1'' and
> temp1.id_m=''2'')) ';
>
> I wszystko dziala w porzadku dopóki nie podaje zmiennej w tym
> zapytaniu. Jesli podam zmienna, w tym przypadku jest to zmienna
> :towar_wz, która jest integer'em, dostaje blad: 'query empty'.
>
> Pewnie to jakis glupi blad, albo przeoczenie.
> Z góry wielkie dzieki za pomoc.
Czy próbujesz zrobić coś takiego?
<SQL>
SET TERM ^ ;
create procedure np(towar_wz varchar(5))
returns (s1 varchar(2500))
as
begin
s1='((select sum((temp1.pz+temp1.mmp)-(temp1.wz+temp1.mmr)) from
temp1 where temp1.data <= ''2'' and temp1.id_t = ' || :towar_wz || ')
and temp1.id_g=''1'' and temp1.id_m=''2'' )+(select
sum((temp1.pz+temp1.mmp)-(temp1.wz+temp1.mmr)) from temp1 where
temp1.data <= ''1'' and temp1.id_t= ''2'' and temp1.id_g=''1'' and
temp1.id_m=''2'')) ';
suspend;
end
^
SET TERM ; ^
</SQL>

Jeśli tak, to działa bez pudła ;o)
Celowo pominąłem CAST przy parametrze, ponieważ on jest tam
niepotrzebny. Byłby potrzebny, gdyby wartość parametru była podstawiana
do zmiennej s1 w apostrofach (tzn. tak jak string).

--
wloochacz
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?= =?ISO-8859-2?Q?Narz=EAdzie_do_budowania_zapyta=F1_SQL=2C?==?I SO-8859-2?Q?_PL/PgSQL=2C_PL/SQL=2C_T-SQL?= [ms sql] =?ISO-8859-2?Q?wy=B6wietlenie_pierwszych_5_rekord?==?ISO-8859-2?Q?=F3w_z_zapytania_=3F_odpowiednik_ROWNUM_w_o?== ?ISO-8859-2?Q?raclu_dla_MS_SQL=27a?= phpMyAdmin zadaje =?ISO-8859-2?Q?z=B3e_zapytania=2E=2E=2E_Dl?==?ISO-8859-2?Q?aczego=3F?= [MSSQL2000] Problem z =?ISO-8859-2?Q?tabel=B1/indeksem/zapytanie?==?ISO-8859-2?Q?m_czy_b=B3=B1d_w_bazie_danych=2E=2E=2E?= [mysql 5.x] jak =?ISO-8859-2?Q?zrealizowa=E6_zapytanie=3F_cz?==?ISO-8859-2?Q?yli_podzapytanie_i_wi=EAcej_ni=BF_jeden_rz=B1? ==?ISO-8859-2?Q?d_wynik=F3w?= [oracle] zapytanie dynamiczne z =?ISO-8859-2?Q?=22dynamiczn=B1_?==?ISO-8859-2?Q?nazw=B1_tabeli=22?= [mysql/php] jak =?ISO-8859-2?Q?zliczy=E6_ilo=B6=E6_unikalnyc?==?ISO-8859-2?Q?h_rekord=F3w_w_jednym_zapytaniu=3F?= [MySQL] Zapytanie z =?ISO-8859-2?Q?dw=F3ch_tabel_na_raz_?==?ISO-8859-2?Q?i_grupowanie_po_wsp=F3lnym_polu=2E_Jak_=3F?= mecze sie i mecze i nic - zapytanie czesciowe
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • morebeer.opx.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