Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Update: Fehlermeldung beim Ausführen einer SQL-Anweisung mithilfe von OLE DB-Provider für DB2: "SQLSTATE 22007, SQLCODE,-181"

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 924599
Problembeschreibung
Stellen Sie sich das folgende Szenario vor. Ausführen eine SQL-Anweisung mithilfe von Microsoft OLE DB-Provider für DB2. Die SQL-Anweisung übergibt einen Microsoft SQL Server-Datetime-Parameter auf eine Spalte mit IBM DB2-Datenbank. Die IBM DB2-Datenbank verwendet, Column des IBM DB2-DATE-Datentyps. In diesem Szenario wird möglicherweise die folgende Fehlermeldung angezeigt:
SQLSTATE: 22007, SQLCODE:-181
Die folgende SQL-Anweisung übergibt z. B. einen SQL Server-Datetime-Parameter auf eine Spalte mit IBM DB2-Datenbank.
declare @var1 datetimeset @var1 = '2006-09-27 00:00:00.000'SELECT COL1, COL2, COL3FROM IBMDB2.TESTDATA.USER1.TABLE1WHERE COL2 = @var1
In diesem Beispiel wird dieses Problem tritt auf, wenn die COL2-Spalte, die den IBM DB2-DATE-Datentyp verwendet wird.
Ursache
Zur Laufzeit kennt OLE DB-Provider für DB2 nicht den richtigen IBM DB2-Datentyp für die Datenbankspalte IBM DB2, dem der SQL Server-Datetime-Parameter übergeben wird. OLE DB-Provider für DB2 enthält daher die Datumsinformationen und die Zeitinformationen in den Wert, den OLE DB-Provider für DB2 auf IBM DB2-Datenbank übergibt. Die Zeitangabe ist ungültig für den IBM DB2-DATE-Datentyp. Aus diesem Grund wird die Fehlermeldung, in dem Abschnitt "Problembeschreibung" erwähnt wird.
Lösung

Microsoft Host Integration Server 2006

Um dieses Problem zu beheben, beziehen Sie das neueste Servicepack für Host Integration Server 2006. Weitere Informationen finden Sie die folgende KB-Artikelnummer:
979497Beziehen des neuesten Servicepacks für Host Integration Server 2006

Microsoft Host Integration Server 2004

Ein unterstützter Hotfix ist von Microsoft erhältlich. Der Hotfix ist jedoch nur zur Behebung des Problems, die in diesem Artikel beschriebene vorgesehen. Installieren Sie diesen Hotfix nur auf Systemen, bei die dieses spezielle Problem auftritt. Dieser Hotfix wird unter Umständen zu einem späteren Zeitpunkt weiteren Tests unterzogen. Wenn durch dieses Problem nicht schwerwiegend beeinträchtigt ist, empfehlen wir, auf das nächste Softwareupdate zu warten, das diesen Hotfix enthält.

Wenn der Hotfix zum Download zur Verfügung steht, ist ein Abschnitt "Hotfix Download available (Hotfixdownload verfügbar", am Anfang dieses Knowledge Base-Artikels. Wenn in diesem Abschnitt nicht angezeigt wird, wenden Sie sich an Microsoft-Kundendienst und Support, um den Hotfix zu erhalten.

Hinweis: Wenn weitere Probleme auftreten oder wenn eine Problembehandlung erforderlich ist, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Normale Servicegebühren werden jedoch für zusätzliche Supportfragen und Probleme, die für diesen speziellen Hotfix nicht qualifizieren. Eine vollständige Liste der Microsoft-Kundendienst und Support-Telefonnummern oder eine separate Serviceanfrage erstellen finden Sie auf folgender Website von Microsoft: Hinweis: Das Formular "Hotfix Download available (Hotfixdownload verfügbar" zeigt die Sprachen für die der Hotfix verfügbar ist. Wenn Sie Ihre Sprache nicht angezeigt werden, ist ein Hotfix nicht für diese Sprache zur Verfügung steht.

Dateiinformationen

Die englische Version dieses Updates besitzt die Dateiattribute (oder höher Dateiattribute), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien werden in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Verwenden Sie um die Differenz zwischen UTC-Zeit und lokaler Zeit zu ermitteln, in dem Element für Datum und Uhrzeit in der Systemsteuerung die Registerkarte Zeitzone.
DateinameDateiversionDateigrößeDatumUhrzeitPlattformSP-Anforderung
Db2oledb.dll6.0.2048.0488,96003-Nov 200617: 31X 86SP1
Db2oledb.hNicht zutreffend24,57903-Nov 200617: 36Nicht zutreffendSP1
Ddmstr.dll6.0.2048.044,03203-Nov 200617: 31X 86SP1
Drdaresync.exe6.0.2048.0337,40803-Nov 200617: 32X 86SP1
Microsoft.Hostintegration.dataaccesslibrary.dll6.0.2048.086,01603-Nov 200617: 31X 86SP1
Microsoft.Hostintegration.dataaccesstool.exe6.0.2048.02,703,36003-Nov 200617: 32X 86SP1
Microsoft.Hostintegration.msdb2client.dll6.0.2048.0114,68803-Nov 200617: 31X 86SP1
Mseidb2c.dll6.0.2048.071,68003-Nov 200617: 31X 86SP1
Mseidb2d.dll6.0.2048.0435,20003-Nov 200617: 31X 86SP1
Mseidrda.dll6.0.2048.0695,80803-Nov 200617: 32X 86SP1
Hinweis: Aufgrund von Dateiabhängigkeiten kann der aktuellste Hotfix, der diese Dateien enthält auch weitere Dateien enthalten.

Microsoft OLE DB-Provider für DB2 Version 1.0

Ein unterstützter Hotfix ist von Microsoft erhältlich. Der Hotfix ist jedoch nur zur Behebung des Problems, die in diesem Artikel beschriebene vorgesehen. Installieren Sie diesen Hotfix nur auf Systemen, bei die dieses spezielle Problem auftritt. Dieser Hotfix wird unter Umständen zu einem späteren Zeitpunkt weiteren Tests unterzogen. Wenn durch dieses Problem nicht schwerwiegend beeinträchtigt ist, empfehlen wir, auf das nächste Softwareupdate zu warten, das diesen Hotfix enthält.

Wenn der Hotfix zum Download zur Verfügung steht, ist ein Abschnitt "Hotfix Download available (Hotfixdownload verfügbar", am Anfang dieses Knowledge Base-Artikels. Wenn in diesem Abschnitt nicht angezeigt wird, wenden Sie sich an Microsoft-Kundendienst und Support, um den Hotfix zu erhalten.

Hinweis: Wenn weitere Probleme auftreten oder wenn eine Problembehandlung erforderlich ist, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Normale Servicegebühren werden jedoch für zusätzliche Supportfragen und Probleme, die für diesen speziellen Hotfix nicht qualifizieren. Eine vollständige Liste der Microsoft-Kundendienst und Support-Telefonnummern oder eine separate Serviceanfrage erstellen finden Sie auf folgender Website von Microsoft: Hinweis: Das Formular "Hotfix Download available (Hotfixdownload verfügbar" zeigt die Sprachen für die der Hotfix verfügbar ist. Wenn Sie Ihre Sprache nicht angezeigt werden, ist ein Hotfix nicht für diese Sprache zur Verfügung steht.

Dateiinformationen

Die englische Version dieses Updates besitzt die Dateiattribute (oder höher Dateiattribute), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien werden in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Verwenden Sie um die Differenz zwischen UTC-Zeit und lokaler Zeit zu ermitteln, in dem Element für Datum und Uhrzeit in der Systemsteuerung die Registerkarte Zeitzone.
32-Bit Version (x 86)
DateinameDateiversionDateigrößeDatumUhrzeitPlattformSP-Anforderung
Db2oledb.dll6.0.2048.0488,96003-Nov 200617: 31X 86SP1
Db2oledb.hNicht zutreffend24,57903-Nov 200617: 36Nicht zutreffendSP1
Ddmstr.dll6.0.2048.044,03203-Nov 200617: 31X 86SP1
Drdaresync.exe6.0.2048.0337,40803-Nov 200617: 32X 86SP1
Microsoft.Hostintegration.dataaccesslibrary.dll6.0.2048.086,01603-Nov 200617: 31X 86SP1
Microsoft.Hostintegration.dataaccesstool.exe6.0.2048.02,703,36003-Nov 200617: 32X 86SP1
Microsoft.Hostintegration.msdb2client.dll6.0.2048.0114,68803-Nov 200617: 31X 86SP1
Mseidb2c.dll6.0.2048.071,68003-Nov 200617: 31X 86SP1
Mseidb2d.dll6.0.2048.0435,20003-Nov 200617: 31X 86SP1
Mseidrda.dll6.0.2048.0695,80803-Nov 200617: 32X 86SP1
64-Bit Version (x 64)
DateinameDateiversionDateigrößeDatumUhrzeitPlattformServicebereich
Db2oledb.dll7.0.2535.0758,54407-Nov 200612: 34X 64Nicht zutreffend
Microsoft.Hostintegration.dataaccesslibrary.dll7.0.2535.02,550,61607-Nov 200612: 34X 64Nicht zutreffend
Microsoft.Hostintegration.dataaccesstool.exe7.0.2535.0613,20007-Nov 200612: 34X 64Nicht zutreffend
Mseidrda.dll7.0.2535.01,355,53607-Nov 200612: 34X 64Nicht zutreffend
Snanls.dll7.0.2535.0128,77607-Nov 200612: 34X 64Nicht zutreffend
Db2oledb.dll7.0.2535.0516,88007-Nov 200612: 34X 86SYSWOW
Mseidrda.dll7.0.2535.0781,07207-Nov 200612: 34X 86SYSWOW
Snanls.dll7.0.2535.0105,22407-Nov 200612: 34X 86SYSWOW
Hinweis: Aufgrund von Dateiabhängigkeiten kann der aktuellste Hotfix, der diese Dateien enthält auch weitere Dateien enthalten.
Status
Microsoft hat bestätigt, dass dies ein Problem in der Microsoft-Produkten handelt, die im Abschnitt "Beziehen sich auf" aufgeführt sind.
Weitere Informationen
Dieser Hotfix Fügt Unterstützung für eine neue Eigenschaft für die Verbindungszeichenfolge hinzu. Mithilfe der Eigenschaften der neuen Verbindungszeichenfolge können Sie einen SQL Server-Datetime-Parameter an eine IBM DB2-Datenbank als den IBM DB2-DATE-Datentyp übergeben. OLE DB-Provider für DB2 löscht die Informationen über den Zeitpunkt im Wert des SQL Server-Datetime-Parameters. OLE DB-Provider für DB2 übergibt daher nur die Datumsinformationen an IBM DB2-Datenbank.

Die neue Eigenschaft für die Verbindungszeichenfolge weist folgende Definition auf:
DateTime As Date = Value
In diesem Verbindungszeichenfolgen-Eigenschaft können Sie Value als Wahr oder falsch definieren. Wenn Sie die DateTime As Date = TRUE-Anweisung, um die Verbindungszeichenfolge, OLE DB-Provider für DB2 konvertiert den SQL Server-Datetime-Parameter in den IBM DB2-DATE-Datentyp. OLE DB-Provider für DB2 übergibt dann den Wert für die IBM DB2-Datenbank.

Wenn Sie die DateTime As Date = FALSE-Anweisung, um die Verbindungszeichenfolge, OLE DB-Provider für DB2 auf IBM DB2-Datenbank den SQL Server-Datetime-Parameter übergibt, wie in der SQL-Anweisung angegeben. In diesem Fall übergibt OLE DB-Provider für DB2 Datumsinformationen und die Zeitinformationen an IBM DB2-Datenbank.

Hinweis: Dieses Verhalten ist das Standardverhalten, wenn Sie nicht die DateTime As Date-Eigenschaft der Verbindungszeichenfolge hinzufügen.

Die folgende Verbindung Zeichenfolge veranschaulicht, wie die DateTime As Date-Eigenschaft verwenden.
; Everything after this line is an OLE DB initialization string.Provider=DB2OLEDB;Password=<Password>;Persist Security Info=True;User ID=<Username>;Initial Catalog=S105FRDM;Defer Prepare=False;Derive Parameters=False;Network Transport Library=TCP;Host CCSID=37;PC Code Page=1252;Network Address=<Address>;Network Port=446;Package Collection=DB2USER;Default Schema=DB2USER;Default Qualifier=DB2USER;DBMS Platform=DB2/AS400;Process Binary as Character=False;Connection Pooling=True;Units of Work=RUW;DateTime As Date=TRUE
Wichtig nachdem Sie diesen Hotfix anwenden und Hinzufügen der DateTime As Date = TRUE-Anweisung, um die Verbindungszeichenfolge sinngemäß die folgende Fehlermeldung:
SQLSTATE: 22007, SQLCODE:-180
Dieses Problem tritt auf, wenn die Datenbankspalte IBM DB2 auf IBM DB2-TIMESTAMP-Datentyp verwendet. Dieses Problem tritt auf, weil die IBM DB2-Datenbank geht davon aus, die Datumsinformationen und die Zeitinformationen erhalten, wenn eine Abfrage an eine IBM DB2-Datenbank-Spalte übergeben wird, die den IBM DB2-TIMESTAMP-Datentyp verwendet. Die DateTime As Date = TRUE Anweisung bewirkt, dass OLE DB-Provider für DB2, um die Zeitinformationen in den Wert des Parameters Datetime SQL Server zu löschen. Aus diesem Grund sind die Daten nicht gültig, wenn die Abfrage der IBM DB2-Datenbank-Spalte übergeben wird, die den IBM DB2-TIMESTAMP-Datentyp verwendet.

Wenn Sie eine IBM DB2-Tabelle, die den IBM DB2-DATE-Datentyp und IBM DB2-TIMESTAMP-Datentyp verwendet Abfragen müssen, müssen Sie möglicherweise mehrere Verbindungszeichenfolgen verwenden, die so konfiguriert sind, dass die richtigen Eigenschaften verwenden. Anschließend können Sie die verschiedenen Datentypen IBM DB2 erfolgreich Abfragen.

Weitere Informationen finden Sie die folgende KB-Artikelnummer:
824684Erläuterung von Standardbegriffen bei Microsoft Softwareupdates
Die in diesem Artikel erwähnten Fremdanbieterprodukte werden von einem Lieferanten hergestellt, der von Microsoft unabhängig ist. Microsoft übernimmt keine Garantie, weder konkludent noch anderweitig, über die Leistung oder Zuverlässigkeit dieser Produkte.

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 924599 – Letzte Überarbeitung: 02/04/2010 09:47:48 – Revision: 2.0

Microsoft Host Integration Server 2006 Enterprise Edition, Microsoft Host Integration Server 2006, Microsoft Host Integration Server 2004 Enterprise Edition, Microsoft Host Integration Server 2004 Standard Edition, Microsoft OLE DB Provider for DB2

  • kbmt kbautohotfix kbdb2oledb kbhis2004 kbfix kbbug kbhotfixserver kbqfe kbpubtypekc KB924599 KbMtde
Feedback
1&t=">arAutoFirePV = 1; var varClickTracking = 1; var varCustomerTracking = 1; var Route = "76500"; var Ctrl = ""; document.write(" /html>eat="language in languagesListForLargeScreens track by $index" class="col-sm-6 col-xs-24 ng-scope"> Venezuela - Español
I=4050&did=1&t=">;m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> >>ow.location.protocol) + "//c.microsoft.com/ms.js'><\/script>");