MSSQLSERVER_7357
Attribut | Wert |
---|---|
Produktname | SQL Server |
Ereignis-ID | 7357 |
Ereignisquelle | MSSQLSERVER |
Komponente | SQLEngine |
Symbolischer Name | RMT_ZERO_COL_OBJECT |
Meldungstext | Das '%ls'-Objekt kann nicht verarbeitet werden. Der OLE DB-Anbieter '%ls' für den Verbindungsserver '%ls' zeigt an, dass entweder das Objekt keine Spalten aufweist oder der aktuelle Benutzer keine Berechtigungen für dieses Objekt besitzt. |
Erläuterung
Der Fehler tritt in der Regel auf, wenn es ein Problem mit der Abfrage gibt, die an die Open Query-Anweisung übergeben wurde.
Aktion des Benutzers
Überprüfen Sie die folgenden potenziellen Ursachen und empfohlenen Lösungen für diesen Fehler.
OPENQUERY gibt kein Resultset zurück.
- Verwenden Sie vierteilige Namen (
linked_server_name.catalog.schema.object_name
), um Einfüge-, Aktualisierungs- oder Löschvorgänge auszuführen. - Verweisen Sie je nach den Funktionen des OLE DB-Anbieters auf die
OPENQUERY
Funktion als Zieltabelle eines ,UPDATE
oderDELETE
einerINSERT
Anweisung, wie im Abschnitt "Beispiele" von "OPENQUERY (Transact-SQL)" beschrieben.
Der OLEDB-Anbieter für eine Pass-Through-Abfrage gibt null Spalten zurück.
- Überprüfen und korrigieren Sie den Pass-Through-Abfragetext, um sicherzustellen, dass gültige Spalten aus der Remotedatenquelle zurückgegeben werden.
- Führen Sie die Pass-Through-Abfrage direkt für die Remotedatenquelle aus, indem Sie die für diese Datenquelle bereitgestellten Clienttools verwenden und sicherstellen, dass mindestens eine gültige Spalte zurückgegeben wird. Beispiele für Pass-Through-Abfragen finden Sie unter OPENQUERY (Transact-SQL).For examples of pass-through queries, see OPENQUERY (Transact-SQL).
- Verwenden Sie eine vierteilige verknüpfte Serverabfrage als Alternative
linked_server_name.database.schema.object
.
Die erste Zeile in der Abfrage ist ein Kommentar.
- Verschieben Sie den Kommentar an das Ende der Abfrage oder Prozedur.