Announcement

Collapse
No announcement yet.

SQL Fehlermeldung als Hauptbenutzer unter XP

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

  • SQL Fehlermeldung als Hauptbenutzer unter XP

    Habe eine Anwendung (Delphi5, BDE 5.1, MySQL über ODBC) die problemlos auf allen W2K Clients läuft auf XP (SP2) installiert. Jetzt ein merkwürdiges Phänomen: Als Administrator läuft alles prima, doch als Hauptbenutzer angemeldet, erscheint die Fehlermeldung: "Invalid SQL "select * from table1 where 1 AND row_id=1......". Diese Fehlermeldung erscheint nur, wenn das SQL-Statement mehr als eine einfache "select * from xxx" enthält. Habe es mit deinstallierter/Neuinstallierter BDE anderen ODBC-Treibern versucht doch keine Änderung.

    Was wird bei XP bei einem Nicht-Admin User an der Übertragung des SQL-Statements an die DB geändert, sodass diese Fehlermeldung erscheint?

    Hat jemand ein ähnliches Problem gehabt?

    (BDE mit nativen Komponenten zu ersetzen ist zuviel Aufwand)

    Danke!

  • #2
    > BDE mit nativen Komponenten zu ersetzen ist zuviel Aufwand

    Eigentlich nicht. Wieso wollen viele Entwickler die auch 2005 immer noch auf die BDE setzen eigentlich nicht endlich mal die paar Tage Zeit spendieren und sie durch native Komponenten ersetzen. Ich würde fast darauf Wetten das dies nicht dein erstes Problem mit der BDE war und deine BDE/ODBC-Fehlersuchen mit Sicherheit schon läger gedauert haben als ein einmalige Umstellung.

    Aber damit du mich nicht wegen besserwisserei verfluchst :-):<br>

    Hast Du schon <a href="http://dev.mysql.com/doc/mysql/en/programs-known-to-work-with-myodbc.html">Programs Known to Work With MyODBC</a> durchgelesen

    Comment


    • #3
      Danke für die Info, aber das Problem besteht nur unter XP als Hauptbenutzer, ohne Admin-Rechte. Sonst läuft alles Prima (auf W2K,W98,NT oder XP als Admin).

      Zur BDE: Ist wirklich viel Aufwand, ist eine riesige Applikation, muß leider eine direkte Lösung finden.

      Trotzdem Danke

      Comment


      • #4
        Lässt sich ermitteln, ob der Fehler von der BDE oder dem ODBC-Treiber erzeugt wird? Was geschieht, wenn das SQL-Statement z.B. über Excel (externe Daten) abgesetzt wird

        Comment


        • #5
          Hallo,
          &gt;Diese Fehlermeldung erscheint nur, wenn das SQL-Statement mehr als eine einfache SELECT ...
          Immer dann, wenn die BDE für die SQL-Anweisung zusätzliche Zwischenschritte benötigt, werden temporäre Paradox-Tabellen angelegt. Ich würde bei <i>http://www.sysinternals.com</i> vorbeischauen, um dort mit den FreeWare-Tools <i>Filemon</i> und <i>RegMon</i> zu prüfen, auf welche Verzeichnisse/Registry-Schlüssel die BDE dabei zugreifen will.
          <br>
          Welches Verzeichnis ist in der BDE-Verwaltung für <b>NET DIR</b> eingetragen? Hat der Anwender für dieses Verzeichnis auch die Schreibrechte

          Comment


          • #6
            Hallo,

            Problem gelöst, vielen Dank für die Hinweise!

            Die BDE erstellt die Datei PDOXUSRS.NET (obwohl ich keine Paradox oder dBase Datei verwende, sondern nur MySQL über ODBC) und versucht sie ins Verzeichnis C:\ zu schreiben. Unter W2K kein Problem doch bei XP, hat ein Hauptbenutzer nicht die Rechte dazu. Das Verzeichnis kann über das TSession-Object (NetFileDir) geändert werden

            Comment


            • #7
              Hallo,
              &gt;Das Verzeichnis kann über das TSession-Object (NetFileDir) geändert werden.
              das ist aber gefährlich, denn es funktioniert nur dann, wenn das eigene Programm die 1. BDE-Anwendung ist. Wirkungsvoller ist die globale Konfiguration über den <b>NET DIR</b>-Eintrag

              Comment

              Working...
              X