Startseite > Newsgroups > dotnetpro.public.programming > Thema "Parameterübergabe an Adapter"

Thema "Parameterübergabe an Adapter"

ThemaAutorDatum
Parameterübergabe an Adapter Arpad Stoever 20.01.2006 14:35
» Re: Parameterübergabe an Adapter Dr. Eckehard Pfeifer 20.01.2006 14:59
» Re: Parameterübergabe an Adapter Jürgen Ewen 23.01.2006 13:52

Parameterübergabe an Adapter

20.01.2006 14:35

Arpad Stoever

Antworten

Hallo zusammen,

kann mir jemand veraten was dem Parameter
"@IsNull_Nachname"
an dieser Stelle übergeben wird.
Natürlich nicht der konkrete Wert ( > :

Me._adapter.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@IsNull_Nachname", System.Data.SqlDbType.Int, 0, System.Data.ParameterDirection.Input, 0, 0, "Nachname", System.Data.DataRowVersion.Original, True, Nothing, "", "", ""))

Dieses Codefragment stammt aus der Prozedur InitAdapter eines DataAdapters ( wer hätte das gedacht ) und ich versuche im Moment hinter die Logik zu kommen nach der der Commandbuilder das Updatecommand bildet. Was soll mir z.B. das folgende Fragment eines Statements sagen?

WHERE (([ID] = @Original_ID) AND ((@IsNull_Nachname = 1 AND [Nachname] IS NULL) OR ([Nachname] = @Original_Nachname))

Und jetzt die vielleicht naive Frage:
Warum muss ich überhaupt seitenlange Sql-Statements bauen um heraus zu finden welche Datensätze sich geändert haben ?
Könnte sich das Dataset nicht merken welche Sätze verändert wurden und es würde einfach reichen zu schreiben 'Update .... Set .... where ID = @xy and Datachanged = true ' ?

War nicht der Sinn der Sache den Entwickler von Routineaufgaben zu entlasten ? Wenn ich mir jetzt angucke welche Codemonstren nötig sind um eine ganz gewöhnliche Updateaktion auszuführen habe ich den Eindruck es ist das genaue Gegenteil der Fall.

Und wenn ich dann einfach den Assistenten benutze und die Tabelle dierekt an ein Grid oder ein paar Textfelder binde ist eigentlicht der ganze schöne Plan mit Trennung von Daten, Business und UI vorbei.

Oder es ist alles ganz anders und ich habe es nur nicht verstanden.
Letztes ist nicht unwahrscheinlich.

Eigentlich sollte diese Frage gar nicht so lang werden aber ich werde seid langem das Gefühl nicht los das MS bei Ado.Net auf halben Wege stehengeblieben ist.

Gruss

Arpad


 
 

Re: Parameterübergabe an Adapter

20.01.2006 14:59

Dr. Eckehard Pfeifer

Antworten


Hallo, zu den SQL-Statements kann ich nichts sagen. Aber dass ein DataSet
sich merkt, was sich geaendert, dass glaube ich zu wissen. Weitere Ansaetze
sind dann wohl RowState-Eigenschaft der Datensaetze (DataRow) und
RowStateFilter, die man setzen kann.
--
MfG EP
Entwicklung - Beratung - Training
(Microsoft Certified Application Developer)
www.dr-e-pfeifer.net
--
Microsoft Excel Funktionsverzeichnis, ISBN 3860636898
Microsoft Excel Programmier-Rezepte, ISBN 386063089X
Microsoft Office PowerPoint 2003 - Das Handbuch, ISBN 3860631942
Microsoft Office Excel 2003 - Das Handbuch, ISBN 3860631934

 
 

Re: Parameterübergabe an Adapter

23.01.2006 13:52

Jürgen Ewen

Antworten

Hallo,

> Und jetzt die vielleicht naive Frage:
> Warum muss ich überhaupt seitenlange Sql-Statements bauen um heraus zu finden welche Datensätze sich geändert haben ?
> Könnte sich das Dataset nicht merken welche Sätze verändert wurden und es würde einfach reichen zu schreiben 'Update .... Set .... where ID = @xy and Datachanged = true ' ?


na ja, die eigenen Änderungen bemerkt das Dataset sehr wohl, aber es kann nicht wissen ob andere Benutzer den Datensatz geändert haben. Es stellt also lediglich sicher, wirklich den Originaldatensatz zu ändern!

Es nimmt zwar viel Arbeit ab, diese automatische SQL-Generierung für das DataSet, ist aber bei genauerer Betrachtung etwas arg überfrachtet. Hand anlegen ist da besser, zumal man dann genau weis was man tut :-)

Gruß Jürgen

Login
Sie sind nicht eingeloggt.

Login & Registrierung
Abo bestellen





Developer Week Special

dotnetpro präsentiert die Developer Week vom 24. – 27. Juni 2013 im NCC Ost, Nürnberg – eine der größten Konferenzen ganz Europas für Entwickler

Anzeige





Newsletter
Tragen Sie Ihre E-Mailadresse für den kostenlosen Newsletter von dotnetpro ein.


Umfrage
Kollegen: Stütze oder Bremse?





Ergebnis anzeigen