Autor Thema: C#: Notessql sagt: Driver not capable  (Gelesen 12050 mal)

Offline bavci

  • Frischling
  • *
  • Beiträge: 7
C#: Notessql sagt: Driver not capable
« am: 03.11.11 - 17:50:49 »
Hi ihr,

ich versuche mich grade an Notes SQL.
Vorraussetzungen sind bei mir momentan folgende:

- Lotus Notes 8.5.2 FP3
- Notes SQL 8.5.1 (gibt es keine 8.5.2, oder ist das die passende???)
- ODBC-Schnittstelle in Windows ist eingerichtet.

Mein Source-Code ist momentan noch darauf beschränkt überhaupt mal eine Verbindung zu bekommen:
Code
OdbcConnection myConnection = null;

            try
            {
                string connectionString = @"Driver={Lotus Notes SQL DRIVER (*.nsf)}; Server=local; Database=mail\xxx.nsf; Uid=Vorname Nachname; Pwd=xxxx";
                System.Data.Odbc.OdbcConnection connection = new System.Data.Odbc.OdbcConnection(connectionString);
                System.Data.Odbc.OdbcCommand command = new System.Data.Odbc.OdbcCommand();
                connection.Open();
                command.Connection = connection;
                System.Data.Odbc.OdbcDataAdapter adapter = new System.Data.Odbc.OdbcDataAdapter(command);
                adapter.SelectCommand.CommandText = "select * from appointment";
                System.Data.DataSet dataSet = new DataSet();
                adapter.Fill(dataSet);
                connection.Close();
                myConnection.Close();

                label1.Text = "Success";
            }
            catch (System.Exception excep)
            {
                //Console.WriteLine(e);
                textBox1.Text = excep.Message.ToString();
            }

Als Fehlermeldung bekomme ich ständig nur:
ERROR [S1C00] [Lotus][ODBC Lotus Notes]Driver not capable
ERROR [IM006] [Microsoft][ODBC Driver Manager] Fehler bei SQLSetConnectAttr-Aufruf für Treiber
ERROR [S1000] [Lotus][ODBC Lotus Notes]Unable to validate userid Vorname Nachname <= Wurde von mir nur unkenntlich gemacht
ERROR [28000] [Lotus][ODBC Lotus Notes]Invalid authorization specification

Hat jemand von euch Erfahrungen damit?
Oder ist einfach nur die Notes SQL Version unpassend? Ich finde schlichtweg keine neuere...

Offline WildVirus

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 658
  • Geschlecht: Männlich
Re: C#: Notessql sagt: Driver not capable
« Antwort #1 am: 03.11.11 - 18:31:46 »
Hallo Namenloser,

mit welcher Kombination Vorname/Nachname + Passwort hast Du es denn probiert ?

Und wie willst Du dann weiter vorgehen, um Dein Problem aus dem anderen Thread zu lösen ?

Hast Du Erfahrung, damit Mails aus einer DB in einer anderen über diese Schnittstelle zu löschen ?

Wenn nein, hör auf den Tipp von Tode im anderen Fred und hol Dir nen Dienstleister.

CU,
Axel

Offline bavci

  • Frischling
  • *
  • Beiträge: 7
Re: C#: Notessql sagt: Driver not capable
« Antwort #2 am: 04.11.11 - 00:07:34 »
Sieh den Thread mal unabhängig von dem anderen... Auch wenn ich damit das Problem umgehen möchte. Ich beweise mir nunmal gerne selbst, dass es immer einen Ausweg gibt. Und solang ich das lokal mache, ist der Schaden gleich null, wenn etwas schief geht.

Nun zu deiner Frage...
Vorname und Nachname, sind mein eigener Vorname + Nachname. Das Passwort ist mein Notes-Passwort, da ich hier auch versuche meine Mailbox zu öffnen und die ODBC-Schnittstelle in Windows auch mit meiner ID geöffnet habe.

Weiteres Vorgehen?
SQL-Erfahrung habe ich genug, daran sollte es nicht scheitern.
Erstmal schauen, wie die Tabellen und deren Spalten in dem Postfach alle heißen und dann schauen, wo das Flag für den Ordner steht, bzw wie es bei ordnerlosen Mails aussieht. Kurz gesagt, erstmal die Struktur des Postfachs blicken.
Ordnerlose Mails dann einfach einem neu erstellten Ordner zuweisen. Soweit die Theorie, die das Lotus-Script umgeht. Das sagt sich so einfach, aber das kriege ich definitiv hin.
Wo wir wieder bei der Ursprungsfrage wären:

Was läuft da oben mit dem Treiber schief? Oder kann Notessql nicht mit Notes 8.5.2 ?
Ein 8.5.1er Notes ließe sich für diesen Zweck sicher auch installieren.
« Letzte Änderung: 04.11.11 - 00:25:18 von bavci »

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: C#: Notessql sagt: Driver not capable
« Antwort #3 am: 04.11.11 - 00:52:15 »
Wenn das einzige Werkzeug, das Du besitzt ein Hammer ist, dann sieht plötzlich jedes Problem aus, als wäre es ein Nagel....

Was veranlasst Dich zu der Annahme, dass Du Informationen, die Du mit Notes- eigenen Mitteln nicht bekommst (weil sie nicht vorhanden sind) über eine externe Schnittstelle bekommst, die zu allem Überfluss auch noch zwei vollkommen verschiedene Welten (Relationale Datenbanken und Dokumentorientierte, unstrukturierte Datenbanken) zu vereinen versucht (was nur in einer sehr begrenzten Schnittmenge der Funktionen beider Welten münden kann).

Nur weil Du das Script, das Du hast, nicht verstehst und nicht zum laufen kriegst, heisst es noch lange nicht, dass die genannten Einschränkungen nicht alle wahr wären.

Du hast viele hilfreiche Tipps bekommen, wie Du das Problem angehen willst. Wenn Du jetzt aus einer 90% Lösung eine 70% Lösung machen willst, nur weil Du unbedingt noch eine weitere Schnittstelle ins Spiel bringen willst, dann tu das und tobe Dich aus...

Aber erwarte dann nicht, dass Dich irgendeiner der hier vertretenen Spezialisten (ich weiss nicht wie viele hunderrt Jahre Notes- Know- How hier so im Schnitt unterwegs sind) dann noch in irgendeiner weise unterstützt...

Nur meine 50cent
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline WildVirus

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 658
  • Geschlecht: Männlich
Re: C#: Notessql sagt: Driver not capable
« Antwort #4 am: 04.11.11 - 23:02:56 »
Vorname und Nachname, sind mein eigener Vorname + Nachname. Das Passwort ist mein Notes-Passwort, da ich hier auch versuche meine Mailbox zu öffnen und die ODBC-Schnittstelle in Windows auch mit meiner ID geöffnet habe.

Ich habe noch nie mit der ODBC-Schnittstelle auf Notes zugegriffen, aber entweder must Du den Pfad zum ID-File mitgeben oder Du meldest Dich über das Internet-PW an. Letzteres wird lokal "nicht ganz trivial". Kann aber sein, dass ich mir hier irre - wie gesagt - die Technik habe ich nie verwendet. Habe besseres (Lotus Script)

Erstmal schauen, wie die Tabellen und deren Spalten in dem Postfach alle heißen und dann schauen, wo das Flag für den Ordner steht, bzw wie es bei ordnerlosen Mails aussieht. Kurz gesagt, erstmal die Struktur des Postfachs blicken.
Ordnerlose Mails dann einfach einem neu erstellten Ordner zuweisen. Soweit die Theorie, die das Lotus-Script umgeht.
Das einzige, was hier stimmt, ist das Wort Theorie. Hat Dir schon jemand gesagt, dass Notes vieles ist, aber nicht tabellenorientiert ? Kennst Du den Aufbau einer Notesdatenbank (Design, Dokumente, ACL, ...) ? Vermute mal nein.

Daher nochmal ganz deutlich: Hol Dir einen Dienstleister !!

Ich bin für meinen Teil hier raus - Du hast mal mit einem Hammer Dein Sparschwein zertrümmert, was geklappt hat. Jetzt versuchst Du direkt -da das mit dem Hammer ja einfach ist- einen Dachstuhl auf ein Doppelhaus zu setzen. Und das nur weil Du Dir was beweisen möchtest ? Ok, aber der Ansatz ist mehr als gefährlich und da kann und will ich mich nicht mehr beteiligen.

CU,
Axel

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: C#: Notessql sagt: Driver not capable
« Antwort #5 am: 05.11.11 - 13:48:30 »
Axel, das Internet-Passwort spielt bei ODBC nicht mit, da gehts immer nur um das lokale ID-File.

Dass sich das Notes-Programmverzeichnis und das mit der notes.ini im Systempfad befinden sollten, ist eh klar.

Und wenn es keinen DSN gibt, sollte man ev. den korrekten Connection String verwenden:
Code
Driver={Lotus NotesSQL 8.51 (32-bit) ODBC DRIVER (*.nsf)};Server=myServerAddress; Database=dbPath\myDb.nsf;Uid=myUsername;Pwd=myPassword;
(via http://www.connectionstrings.com/lotus-notes )
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline WildVirus

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 658
  • Geschlecht: Männlich
Re: C#: Notessql sagt: Driver not capable
« Antwort #6 am: 05.11.11 - 14:32:25 »
Hallo Martin,

da war ich mir mangels Erfahrung eben nicht sicher. Was mich irritiert hat, ist die Angabe von
Vorname und Nachname, sind mein eigener Vorname + Nachname

Anscheinend hat er statt der Angabe des ID-Files hier Vor- und Nachname eingegeben, was damit m.E. auch nicht klappen kann. Dürfte in der Doku bestimmt beschrieben sein, aber so was liest ja keiner :-)

CU,
Axel

Offline bavci

  • Frischling
  • *
  • Beiträge: 7
Re: C#: Notessql sagt: Driver not capable
« Antwort #7 am: 07.11.11 - 17:04:36 »
Axel, das Internet-Passwort spielt bei ODBC nicht mit, da gehts immer nur um das lokale ID-File.

Dass sich das Notes-Programmverzeichnis und das mit der notes.ini im Systempfad befinden sollten, ist eh klar.

Und wenn es keinen DSN gibt, sollte man ev. den korrekten Connection String verwenden:
Code
Driver={Lotus NotesSQL 8.51 (32-bit) ODBC DRIVER (*.nsf)};Server=myServerAddress; Database=dbPath\myDb.nsf;Uid=myUsername;Pwd=myPassword;
(via http://www.connectionstrings.com/lotus-notes )


Hi, mein Connection-String war so schon korrekt, da der Treiber nach der Installation nicht "Lotus NotesSQL 8.51 (32-bit) ODBC DRIVER (*.nsf)", sondern "Lotus Notes SQL DRIVER (*.nsf)" heißt.
Mit dem von dir vorgeschlagenen String wird der Treiber gar nicht erst inistialisiert, da er ihn nicht auffinden kann.

Die von mir oben genannte Fehlermeldung stammt vom Treiber selbst. Ich vermute eine inkompatibilität zwischen Notessql 8.51 und dem 8.52er Client!?

p.s.
Erstmal schauen, wie die Tabellen und deren Spalten in dem Postfach alle heißen und dann schauen, wo das Flag für den Ordner steht, bzw wie es bei ordnerlosen Mails aussieht. Kurz gesagt, erstmal die Struktur des Postfachs blicken.
Ordnerlose Mails dann einfach einem neu erstellten Ordner zuweisen. Soweit die Theorie, die das Lotus-Script umgeht.
Das einzige, was hier stimmt, ist das Wort Theorie. Hat Dir schon jemand gesagt, dass Notes vieles ist, aber nicht tabellenorientiert ? Kennst Du den Aufbau einer Notesdatenbank (Design, Dokumente, ACL, ...) ? Vermute mal nein.

Daher nochmal ganz deutlich: Hol Dir einen Dienstleister !!

Ich bin für meinen Teil hier raus - Du hast mal mit einem Hammer Dein Sparschwein zertrümmert, was geklappt hat. Jetzt versuchst Du direkt -da das mit dem Hammer ja einfach ist- einen Dachstuhl auf ein Doppelhaus zu setzen. Und das nur weil Du Dir was beweisen möchtest ? Ok, aber der Ansatz ist mehr als gefährlich und da kann und will ich mich nicht mehr beteiligen.

CU,
Axel
Lass mich doch mal spielen, anstatt zu meckern... Das ganze passiert schließlich nicht am Produktivsystem und ich möchte hierbei einfach die Möglichkeiten austesten ;)
Datenbanken bestehen nunmal aus einem komplexen System miteinander verknüpfter Tabellen.
« Letzte Änderung: 07.11.11 - 17:08:12 von bavci »

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: C#: Notessql sagt: Driver not capable
« Antwort #8 am: 07.11.11 - 17:09:58 »
Datenbanken bestehen nunmal aus einem komplexen System miteinander verknüpfter Tabellen.

In Bezug auf Notes ist das ein Trugschluss.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz