2016-05-17 23 views
1

Ich erstelle eine Anwendung, die Access ADP (Access Data Project) verwendet. als Frontend und SQL Server als Backend. Ich verwende ADODB für die Verbindung. Ich habe untersucht, ob die RecordSource-Eigenschaft oder Recordset-Eigenschaft für Formulare verwendet werden soll. Mein Ziel ist es, eine ungebundene Anwendung zu erstellen.Recordsource vs Recordset für ungebundene Formulare

Ich war nicht in der Lage, eine klare Antwort auf welche zu verwenden. Bisher, was ich in der Lage gewesen zu tun gesetzt wird, um die Datenherkunft auf die gespeicherte Prozedur wie diese

strSQL = "exec STOREDPROCEDURE " 
Me.Form.RecordSource = strSQL 

ich auch die gleiche SQL-str als Re-Cord öffnen kann, die Formen-Cord-Set dann den Re-Cord schließen wie diese

Kann mir jemand erklären, was die Unterschiede zwischen den 2 und welche ist die bevorzugte Methode? So wie ich es sehe, werden die Daten auf SQL Server gefiltert, bevor sie an die Anwendung zurückgegeben werden. Daher sehe ich keinen Unterschied zwischen der Verwendung von Recordset oder Recordsource.

+0

@HansUp Ja ist es. –

Antwort

1

Mit einem ADP verwenden Sie Datensatzquelle, nicht Re-Cord-Set, obwohl Sie abhängig von der Version des Zugriffs, die Sie ausführen, müssen auch die Eingabeparameter Eigenschaft festlegen.

Me.RecordSource = "EXEC schema.storedprocedue [arguments]" 

funktioniert gut für Formulare.

Ein Kommentar würde ich jedoch machen - warum ein .adp? MS Access 2013 & Später wird kein adp ausgeführt, und Access 2010 wird wahrscheinlich in einigen Jahren nicht mehr unterstützt.