Announcement

Collapse
No announcement yet.

Parameters Object eines OLEDBCommand

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Parameters Object eines OLEDBCommand

    Hallo,
    <br>
    <br>1)
    <br>myoledbcmd.Parameters.Add("ID", System.Data.SqlDbType.Int).Value =...
    <br>Wieso schreit der Kompiler hier nicht Zeter und Mordio?
    <br>Eigentlich müßte er doch feststellen, das ich den falschen Typ angegeben habe, oder kann ich etwa SqlDbTypen auf OleDBCommandos los lassen?
    <br>
    <br>2)
    <br>Wieso gibt es eigentlich kein System.Data.SqlDbType.dateTime in OleDbType?
    <br>Wie kann ich nun einem OleDbCommand einen Parameter vom Type System.Datetime übergeben (Datum + Uhrzeit)?
    <br>System.Data.OleDb.OleDbType.Date?
    <br>System.Data.OleDb.OleDbType.DBTime?
    <br>Bei den obigen Typen heißt es zwar, das diese System.DateTime zugeordnet werden, jedoch wird in der Formatbeschreibung nie die Uhrzeit erwähnt.
    <br>
    <br>3)
    <br>Kann ich den size value weglassen
    <br>myoledbcmd.Parameters.Add("MyText", System.Data.OleDb.OleDbType.VarChar).Value =...
    <br>oder muß ich
    <br>myoledbcmd.Parameters.Add("MyText", System.Data.OleDb.OleDbType.VarChar, 50).Value =...
    <br>den immer mit angeben?
    <br>
    <br>Pro weglassen:
    <br>Wenn man den weglassen kann müßte man nicht bei einer etwaigen Änderung der Feldgröße den gesamten Code durchsuchen um diese Änderung nachzuhalten.
    <br>
    <br>Contra weglassen:
    <br>???
    <br>
    <br>Danke für die Info.
    <br>
    <br>mfg
    <br>PS

  • #2
    Hallo,

    nur die Strukturen und Klassen aus dem Namespace <b>System.Data.SqlTypes</b> gelten speziell für den MS SQL Server. Die Hilfeseite <i>System.Data.SqlTypes namespace</i> des .NET Framework SDK zeigt die Tabelle mit den Entsprechungen zwischen den <i>.NET Framework SqlTypes</i> und den <i>NET Framework SqlDbType</i>.

    Bei der Arbeit mit den Klassen aus dem System.Data.OleDb-Namespace gelten die Einschränkungen und Besonderheiten, die auch für den zugrundeliegenden OLE DB Provider gelten. Auch unter ADO gibt es OLE DB Provider, die zum Beispiel eine explizite Größenangabe von VARCHAR-Parametern zwingend vorschreiben - aber andere nicht. Es handelt sich somit nicht um ein ADO.NET-Problem, sondern um ein Generelles

    Comment

    Working...
    X