Frage : Asp

Ich verstehe nicht, warum ich eine Störung erhalte, wenn ich versuche, meine Form zu meinem database.
www.shipfish2u.com/product Editor.  Versuchen, eine Aufzeichnung auf dem Kasten der rechten Seite vorzuwählen und sie dann zu aktualisieren.  Ich erhalte und Störung in setRecords.asp auf Linie 95. .undateable query.

Antwort : Asp

Der allgemeinste Grund ist, dass das Internet-Gastkonto (IUSR_MACHINE), das durch Rückstellungsteil vom „jeder“ Gruppe ist, nicht hat, Erlaubnis auf die Datenbankdatei (.mdb) zu schreiben. Um dieses Problem zu regeln, den Sicherheitsvorsprung im Forscher benutzen um die Eigenschaften auf diese Akte einzustellen damit das Internet-Gastkonto die korrekte Erlaubnis hat.

ANMERKUNG: Wenn man Microsoft Access-Datenbanken mit AUFHEBEN verwendet, ist es auch notwendig, den Internet-Gast zu geben, den Konto Erlaubnis auf das Verzeichnis schreiben, welches die .mdb Akte enthält. Dieses ist, weil Strahl eine .ldb Akte herstellt, um die Datenbankblockierung zu behandeln. Sie können Lese-Schreiberlaubnis auf dem „Temp“ Faltblatt geben auch müssen, weil Strahl temporäre Akten in diesem Verzeichnis herstellen kann.
Eine zweite Ursache dieser Störung ist, dass die Datenbank nicht mit dem korrekten MODUS für Schreiben geöffnet. Wenn Sie das geöffnete auf dem Verbindungsobjekt durchführen, benutzen Sie das Moduseigentum, um die Erlaubnis auf dem Anschluss wie gezeigt anzuzeigen hier:

     SQL = „UPDATE Produkt-Satz UnitPrice = 2; “
     Einstellen Anschl. = Server.CreateObject („ADODB.Connection“)
     Conn.Mode = 3 '3 = adModeReadWrite
     Conn.Open „myDSN“
     Conn.Execute (SQL)
     Conn.Close

                                   
ANMERKUNG: Durch Rückstellung eingestellt der MODUS bis 0 (adModeUnknown), das im Allgemeinen Updates erlaubt.
Eine andere Ursache dieser Störung ist, dass der „gelesenen nur“ Einstellung die Wahlseite auf diesem DSN im ODBC Manager innen überprüft werden kann.
Die letzte Ausgabe und die Arbeit betrifft herum jede mögliche SQL-Datenquelle. Die Störung kann durch SQL-Aussagen verursacht werden, die Verweisvollständigkeit der Datenbank verletzen. Sind hier einige der allgemeinsten Fragen, die ausfallen:
Die einfachsten Gruppen, zum zu beschäftigen sind die, die Sie nicht ändern können: crosstab, SQL-Durchgang, Anschluss oder Tätigkeitsfragen des Updates (oder Bildentabelle), die die UniqueValue Eigenschaften haben, die auf ja eingestellt.

Eine andere gemeinsame Sache ist, wenn die Verbindung verbundene ODBC Tabellen umfaßt, die nicht einzigartige Indizes haben. In diesem Fall gibt es keine Weise, damit SQL garantiert, dass Aufzeichnungen in einer Tabelle einzigartig sind, die Felder hat, deren Wert mit der Frage ändert.

Eine Ursache hat eine robuste Abhilfe. Wenn Sie versuchen, ein Verbindungfeld auf der „einer“ Seite von „ein-zu-vielen“ zu aktualisieren Frage, ausfällt sie ie, es sei denn Sie an kaskadierenupdates drehen. Auf diese Weise, beauftragen Sie Verweisvollständigkeit zum Düsentriebwerk.
Weitere Lösungen  
 
programming4us programming4us