🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.comp.lang.csharp
8 messages
8 total messages Started by rozrabiaka Sun, 28 Mar 2004 11:23
Jak odswiezyc dataset-a ? [dluuugie]
#691
Author: rozrabiaka
Date: Sun, 28 Mar 2004 11:23
27 lines
1968 bytes
Witam
Problem wyglada nastepujaco:
Mam dwa formularze, glowny i do wyszukiwania (podaje sie kryteria a 
wynik ma pojawic sie w glownym).

W formularzu glownym pojawia sie 100 rekordow po uruchomieniu programu 
(tak ma byc, w bazie jest 50 tysiecy), dane poprawnie pojawiaja sie na 
formularzu w komponentach typu label, otwieram drugi formularz, podaje 
kryteria, polecenie SQL jest poprawne, sprawdzilem wielokrotnie. Chce 
przy pomocy tego samego komponentu SqlCommand wczytac dane i zamienic z 
istniejacymi w dataset, robie to w ten sposob:

dataset1.Clear(); (lub dataset1.Tables["Table"].Clear();) DANE NIE 
ZNIKAJA z komponentow jak i datasetu!

SqlCommand1.CommandText = polecenie;
SqlCommand1.ExecuteNonQuery;
dataadapter1.Fill(dataset1);

a na formularzu glownym nadal widnieja "stare" dane, nic sie nie zmienia :(

co mam zrobic, aby pojawily sie nowe dane? probowalem juz przeroznych 
rzeczy, roznych kolejnosci wykonywania powyzszych procedur i nic. 
Probowalem nawet dataset1.Reset() i tez nic. Moze przyczyna tego 
wszystkiego jest w tym, ze calosc wykonywana jest w wątku?

pozdrawiam i dziekuje bardzo za pomoc, grzes.
Re: Jak odswiezyc dataset-a ? [dluuugie]
#692
Author: Marek Janaszewski USUNTO. z adre...
Date: Sun, 28 Mar 2004 11:58
21 lines
1556 bytes
rozrabiaka wrote:
[...]
> dataset1.Clear(); (lub dataset1.Tables["Table"].Clear();) DANE NIE
> ZNIKAJA z komponentow jak i datasetu!
[...]
> co mam zrobic, aby pojawily sie nowe dane? probowalem juz przeroznych
> rzeczy, roznych kolejnosci wykonywania powyzszych procedur i nic.
> Probowalem nawet dataset1.Reset() i tez nic. Moze przyczyna tego
> wszystkiego jest w tym, ze calosc wykonywana jest w wątku?
[...]

Witam!

Może i bardzo dobrze, że nie znikają. Takie rozwiązanie jako domyślne jest
najlepsze, zostawia Twoje nie zatwierdzone dane.
Wiec należy wywołać: RejectChanges()

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Re: Jak odswiezyc dataset-a ? [dluuugie]
#693
Author: Janusz M
Date: Sun, 28 Mar 2004 16:04
34 lines
1892 bytes
U�ytkownik "rozrabiaka" <br...@maila.pl> napisa� w wiadomo�ci
news:c46cn4$l6o$1@news.onet.pl...
> Witam
> Problem wyglada nastepujaco:
> Mam dwa formularze, glowny i do wyszukiwania (podaje sie kryteria a
> wynik ma pojawic sie w glownym).
>
> W formularzu glownym pojawia sie 100 rekordow po uruchomieniu programu
> (tak ma byc, w bazie jest 50 tysiecy), dane poprawnie pojawiaja sie na
> formularzu w komponentach typu label, otwieram drugi formularz, podaje
> kryteria, polecenie SQL jest poprawne, sprawdzilem wielokrotnie. Chce
> przy pomocy tego samego komponentu SqlCommand wczytac dane i zamienic z
> istniejacymi w dataset, robie to w ten sposob:
>
> dataset1.Clear(); (lub dataset1.Tables["Table"].Clear();) DANE NIE
> ZNIKAJA z komponentow jak i datasetu!
>
> SqlCommand1.CommandText = polecenie;
> SqlCommand1.ExecuteNonQuery;
> dataadapter1.Fill(dataset1);
>


Witam,

A moze powinno byc

dataadapter1.Fill(dataset1,"Table");


pozdrawiam,

Janusz Mars
Re: Jak odswiezyc dataset-a ? [dluuugie]
#694
Author: rozrabiaka
Date: Sun, 28 Mar 2004 16:13
24 lines
1422 bytes
Użytkownik Janusz M napisał:
> Użytkownik "rozrabiaka" <br...@maila.pl> napisał w wiadomości
> Witam,
> 
> A moze powinno byc
> 
> dataadapter1.Fill(dataset1,"Table");
> 
> 
> pozdrawiam,
> 
> Janusz Mars
> 

Witam.
Nie tak tez nie dzialalo. Dokladnie przed sekunda znalazlem problema :)
powinno byc:
dataadapter1.SelectCommand.CommandText = "polecenie sql";

i tak dziala, ale dlaczego tamto nie, to nie wiem :)

Dziekuje Panie Januszu za chec pomocy :)

pozdrawiam, grzesiek
Re: Jak odswiezyc dataset-a ? [dluuugie]
#695
Author: Marek Janaszewski USUNTO. z adre...
Date: Sun, 28 Mar 2004 19:36
18 lines
1339 bytes
rozrabiaka wrote:
[...]
> Nie tak tez nie dzialalo. Dokladnie przed sekunda znalazlem problema
> :) powinno byc:
> dataadapter1.SelectCommand.CommandText = "polecenie sql";
>
> i tak dziala, ale dlaczego tamto nie, to nie wiem :)
[...]

Witam!

Może przez: ExecuteNonQuery(), to nie wykonuje zapytania tylko szacuje
wynik.

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Re: Jak odswiezyc dataset-a ? [dluuugie]
#698
Author: Jacek Wo³oszka
Date: Mon, 29 Mar 2004 09:49
28 lines
1876 bytes
"rozrabiaka" <br...@maila.pl> wrote in message
news:c46tld$k49$1@news.onet.pl...
> U�ytkownik Janusz M napisa�:
> > U�ytkownik "rozrabiaka" <br...@maila.pl> napisa� w wiadomo�ci
> > Witam,
> >
> > A moze powinno byc
> >
> > dataadapter1.Fill(dataset1,"Table");
> >
> >
> > pozdrawiam,
> >
> > Janusz Mars
> >
>
> Witam.
> Nie tak tez nie dzialalo. Dokladnie przed sekunda znalazlem problema :)
> powinno byc:
> dataadapter1.SelectCommand.CommandText = "polecenie sql";
>
> i tak dziala, ale dlaczego tamto nie, to nie wiem :)
>
Wypelniales DataSet danymi z DataAdapter. A polecenie sql w pierwotnej
wersji nic nie mialo wspolnego z DataAdapter - dopiero w instrukcji
dataadapter1.SelectCommand.CommandText = "polecenie sql" wskazales zrodlo
danych "polecenie sql" dla DataAdapter.
Re: Jak odswiezyc dataset-a ? [dluuugie]
#696
Author: Michał Brzozowski
Date: Mon, 29 Mar 2004 13:21
15 lines
1554 bytes
Sun, 28 Mar 2004 21:36:22 +0200, na alt.pl.comp.lang.csharp, Marek
Janaszewski (USUN_TO. z adresu!) napisał(a):

> rozrabiaka wrote:
> Może przez: ExecuteNonQuery(), to nie wykonuje zapytania tylko szacuje
> wynik.

ExecuteNonQuery wykonuje zapytanie! Tylko nie zwraca DataSetu. Zwraca
liczbe rekordów 'affected'. Mozna uzyc tej metody do bezpośredniej
modyfikacji bazy danych bez użycia DataSetu. Czyli mozna odpalic Update,
Delete, Insert. Dla tego typu poleceń zwraca liczbe zmienionych rekordów.
Dla innych polecen zwraca -1. Nie mam pojecia co sie stanie jak odpalisz
Select przy uzyciu ExecuteNonQuery.

Michał
Re: Jak odswiezyc dataset-a ? [dluuugie]
#697
Author: Marek Janaszewski USUNTO. z adre...
Date: Mon, 29 Mar 2004 16:30
25 lines
1875 bytes
Michał Brzozowski wrote:
> Sun, 28 Mar 2004 21:36:22 +0200, na alt.pl.comp.lang.csharp, Marek
> Janaszewski (USUN_TO. z adresu!) napisał(a):
>
>> rozrabiaka wrote:
>> Może przez: ExecuteNonQuery(), to nie wykonuje zapytania tylko
>> szacuje wynik.
>
> ExecuteNonQuery wykonuje zapytanie! Tylko nie zwraca DataSetu. Zwraca
> liczbe rekordów 'affected'. Mozna uzyc tej metody do bezpośredniej
> modyfikacji bazy danych bez użycia DataSetu. Czyli mozna odpalic
> Update, Delete, Insert. Dla tego typu poleceń zwraca liczbe
> zmienionych rekordów. Dla innych polecen zwraca -1. Nie mam pojecia
> co sie stanie jak odpalisz Select przy uzyciu ExecuteNonQuery.
[...]

Witam!

Wygląda na to, że masz racje. Jakoś dałem się wzięć pierwszej części
spostrzeżeń w SDK.

-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads