Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Recordset Meldet Fehler

2 views
Skip to first unread message

Manuel Wessing

unread,
Jul 3, 2002, 4:56:21 AM7/3/02
to
Hallo zusammen,

Ich weiß einfach nicht was ich noch tun soll. Mein Datenbank Viewer kann
jetzt alle arten von Tabellen und Abfragen anzeigen, und den SQL String
erzeugen.

Nur bei einigen Tabellen in der NWIND.MDB kommt vollgende Fehlermeldung :
Die Methode 'Open' für das Objekt '_Recordset' ist fehlgeschlagen

Der SQL String für diese Tabelle ist :
SELECT Firma, Homepage, Kontaktperson, Land, [Lieferanten-Nr], Ort, PLZ,
Position, Region, Straße, Telefax, Telefon FROM Lieferanten

Ein Index ist auf den Felder Lieferanten-Nr, Firma, Kontaktperson

Wenn ich diese aus dem SQL Befehl lösche, gehts. Bei anderen Tabellen sind
auch Indizez hinterlegt, die aber werden ohne Fehler angezeigt.

mfg
M Wessing


Peter Fleischer

unread,
Jul 3, 2002, 6:03:21 AM7/3/02
to
Manuel,
kann es sein, dass dem von dir genutzten Provider in SQL reservierte
Schlüsselworte bei der Nutzung als Feldnamen missfallen:-))). Dazu könnte
z.B. [Position] gehören.

Peter

"Manuel Wessing" <M.We...@boss-Dortmund.de> schrieb im Newsbeitrag
news:afue7u$le$00$1...@news.t-online.com...
....


> Nur bei einigen Tabellen in der NWIND.MDB kommt vollgende Fehlermeldung :
> Die Methode 'Open' für das Objekt '_Recordset' ist fehlgeschlagen
>
> Der SQL String für diese Tabelle ist :
> SELECT Firma, Homepage, Kontaktperson, Land, [Lieferanten-Nr], Ort, PLZ,
> Position, Region, Straße, Telefax, Telefon FROM Lieferanten
>
> Ein Index ist auf den Felder Lieferanten-Nr, Firma, Kontaktperson
>
> Wenn ich diese aus dem SQL Befehl lösche, gehts. Bei anderen Tabellen sind
> auch Indizez hinterlegt, die aber werden ohne Fehler angezeigt.

....


Norbert Schiller

unread,
Jul 3, 2002, 9:22:20 AM7/3/02
to
Hallo Manuel,

ich stochere da auch etwas im Nebel.


> Ein Index ist auf den Felder Lieferanten-Nr, Firma, Kontaktperson
> Wenn ich diese aus dem SQL Befehl lösche, gehts

Dass darauf Indexe sind, dürfte damit nichts zu tun haben.
Hast du's mal probiert nur [Lieferant-Nr] rauszunehmen? Ich weiss, ich
weiss, du hast eckige Klammern , aber ich stör' mich immer an solchen
Feldnamen mit einem "-". Ist nur ein Versuch.
--
Gruß,
Norbert Schiller
[mailto:nsch...@freenet.de]


Manuel Wessing

unread,
Jul 3, 2002, 9:20:41 AM7/3/02
to
Sorry, aber so einige SQL Befehle kenne ich nicht. Das es an Position liegt
hätte ich nicht gedacht. Ich dachte es liegt an den Index oder so etwas in
der Richtung. Oder hab ich was mit den Indizez etwas falsch verstanden ?!?

Nochmal schönen dank, Peter. Sorry für die mühe... ;-)

mfg
M. Wessing

"Peter Fleischer" <peter.fleis...@gmx.de> schrieb im Newsbeitrag
news:afuiat$gjevk$1...@ID-117757.news.dfncis.de...

Peter Götz

unread,
Jul 3, 2002, 11:09:25 AM7/3/02
to
Hallo Manuel,

>
> Nochmal schönen dank, Peter. Sorry für die mühe... ;-)
>

Hier noch eine kurze Ergänzung zu Namen wie "Position" und andere
reservierte Wörter.
Du kannst solche Namen verwenden, musst sie dann aber in Deinen SQL-Strings
in eckige Klammern setzen. Besser ist es aber sicher, nach Möglichkeit
solche reservierten Wörter ganz zu vermeiden.

Gruß aus St.Georgen
Peter Götz
p.g...@gssg.de
www.gssg.de (mit VB-Tips u. Beispielprogrammen)

Peter Götz

unread,
Jul 3, 2002, 11:11:26 AM7/3/02
to
Hallo Norber,

> ich stochere da auch etwas im Nebel.
> > Ein Index ist auf den Felder Lieferanten-Nr, Firma, Kontaktperson
> > Wenn ich diese aus dem SQL Befehl lösche, gehts
> Dass darauf Indexe sind, dürfte damit nichts zu tun haben.
> Hast du's mal probiert nur [Lieferant-Nr] rauszunehmen? Ich weiss, ich
> weiss, du hast eckige Klammern , aber ich stör' mich immer an solchen
> Feldnamen mit einem "-". Ist nur ein Versuch.

... aber ein vergeblicher.
Wenn der Feldname in eckigen Klammern steht, dann darf er auch Sonderzeichen
wie "-" enthalten.

Norbert Schiller

unread,
Jul 4, 2002, 4:59:56 AM7/4/02
to
Hallo Peter,

> ... aber ein vergeblicher.
> Wenn der Feldname in eckigen Klammern steht, dann darf er auch
Sonderzeichen
> wie "-" enthalten.

Ja, das ist mit schon klar gewesen und immer noch klar :-). Hatte ich ja
auch geschrieben. Nur ich hatte sonst nichts gesehen wo man ansetzen könnte.
Manuel hatte nämlich geschrieben, dass es funktioniert, wenn er die drei
Felder <Lieferanten-Nr,Firma, Kontaktperson> aus dem SQL-String nimmt. Ergo
ist das Feld <Position> immer noch im SQL-String - und es funbktioniert, wie
er schrieb ???????
Also kann die Verwendung des Wortes <Position> doch nicht die Fehlerquelle
gewesen sein. Scheinar offensichtlich doch. Da werd' einer schlau draus.

Manuel Wessing

unread,
Jul 4, 2002, 5:27:17 AM7/4/02
to
Schon klar ich wußte nur nicht das Position ein reserviertes wort ist.
Vermeiden kann ich da nichts, weil das nur eine Datenbank Viewer ist.

mfg
M. Wessing


"Peter Götz" <p.g...@gssg.de> schrieb im Newsbeitrag
news:#7bD#iqICHA.1748@tkmsftngp09...

Manuel Wessing

unread,
Jul 4, 2002, 5:29:19 AM7/4/02
to
Hmm Sicher bin ich mir nicht ob ich aus versehen Position mit gelöscht habe.
Gibt es irgend wo eine Liste mit Reservierten Befehelen ?

"Norbert Schiller" <nsch...@freenet.de> schrieb im Newsbeitrag
news:eLO$hgzICHA.2620@tkmsftngp13...

Peter Götz

unread,
Jul 4, 2002, 6:09:43 AM7/4/02
to
Hallo Norbert,

> Also kann die Verwendung des Wortes <Position> doch nicht die Fehlerquelle
> gewesen sein.

ich habe eben mal folgenden Test gemacht:
Zugriff per ADO2.7, Provider: Jet4.0

Datenbank: Access2000.mdb oder AccessXP.mdb

TabellenName: Tabelle
FeldNamen: ID, Position, FNum, Bearbeiter, TStamp

Recordset öffnen mit

"Select ID, Position, FNum, Bearbeiter, TStamp From Tabelle"

produziert einen Fehler.
Recordset öffnen mit

""Select ID, [Position], FNum, Bearbeiter, TStamp From Tabelle"

erzeugt keinen Fehler.
Diese Ergebnisse sind eindeutig.

> Scheinar offensichtlich doch. Da werd' einer schlau draus.

In den Dateien sqlbol.chm (Online-Doku zum SQL-Server7.0) und JETSQL35.hlp
ist "Postion" nicht als reserviertes Wort aufgeführt.
Scheint also so, dass "Position" erst in einer jüngeren Jet-Version (nach
3.5) zum "Reservierten Wort" erklärt worden ist. Ob "Position" beim
SQL-Server 2000 auch als reserviertes Wort neu hinzugekommen ist, muss ich
erst noch nachsehen. Der entsprechende Server läuft im Moment gerade nicht.

Peter Fleischer

unread,
Jul 4, 2002, 6:35:00 AM7/4/02
to
Peter,
gib mal in der MSDN unter "Platform SDK, Data Services" ein:

"position"+"reserved keywords"

da kommt bei mir u.a. "List of Reserved Keywords"

Peter

"Peter Götz" <p.g...@gssg.de> schrieb im Newsbeitrag

news:O7FYDO0ICHA.2356@tkmsftngp13...
...


> In den Dateien sqlbol.chm (Online-Doku zum SQL-Server7.0) und JETSQL35.hlp
> ist "Postion" nicht als reserviertes Wort aufgeführt.
> Scheint also so, dass "Position" erst in einer jüngeren Jet-Version (nach
> 3.5) zum "Reservierten Wort" erklärt worden ist. Ob "Position" beim
> SQL-Server 2000 auch als reserviertes Wort neu hinzugekommen ist, muss ich
> erst noch nachsehen. Der entsprechende Server läuft im Moment gerade
nicht.

...


Peter Götz

unread,
Jul 4, 2002, 8:42:49 AM7/4/02
to
Hallo Peter,

> gib mal in der MSDN unter "Platform SDK, Data Services" ein:
>
> "position"+"reserved keywords"
>
> da kommt bei mir u.a. "List of Reserved Keywords"

ja, diese Liste (bezieht sich auf ODBC) habe ich auch und dort ist
"Position" auch als reserviertes Wort aufgeführt.
Wenn Du mit dem gleichen Suchbegriff die ges. MSDN-Library absuchst bekommst
Du auch noch

Transact-SQL Reference
Reserved Keywords

eine entsprechende Liste für den SQL-Server2000. Darin kommt "Position" als
reserviertes Wort wieder nicht vor.
Da mein Server mit dem SQL-Server2000 momentan nicht läuft, kann ich das
z.Z. nicht ausprobieren. Werde ich aber bei nächster Gelegenheit
ausprobieren.

Manuel Wessing

unread,
Jul 4, 2002, 10:39:25 AM7/4/02
to
Ich versteh das jetzt nicht mehr so ganz ?!?
Microsoft hat also Position zu einem reserviertem Befehl gemacht ?? und dann
wieder nicht ??? und jetzt wieder doch ???

Komisch...

mfg
M. Wessing


"Peter Götz" <p.g...@gssg.de> schrieb im Newsbeitrag

news:#GAdVi1ICHA.2464@tkmsftngp12...

Gerrit Kuhlendahl

unread,
Jul 4, 2002, 11:24:45 AM7/4/02
to
Moin Manuel!

"Manuel Wessing" <M.We...@boss-Dortmund.de> schrieb im Newsbeitrag

news:ag1mn4$l4q$05$1...@news.t-online.com...


> Ich versteh das jetzt nicht mehr so ganz ?!?
> Microsoft hat also Position zu einem reserviertem Befehl gemacht ?? und
dann
> wieder nicht ??? und jetzt wieder doch ???
>
> Komisch...

[Fullquote umweltgerecht entsorgt, Nibbles recycled]

Nun, andererseits läßt sich das Problem von vorn herein
sehr elegant umgehen: Setze einfach Präfixe. Erstmal
weißt Du dann, worum es sich bei den Ausdrücken handelt
und zum andern kommst Du kaum in Namenskonflikte, z. B.:

tbl_xxx für Tabellen
fld_xxx für Felder
vw_xxx für Sichten

[u.v.a.m]

Viele Grüße

Gerrit


--
-------------------------------------------------------
KUH-SOFT - Die Software von glücklichen Programmierern

Bahrenfelder Steindamm 100 - D 22761 Hamburg
eMail: kon...@kuh-soft.de
Home: http://www.kuh-soft.de

0 new messages