Teď jste offline a čekáte, až se znova připojí internet.

ASP, vrací chybu "Operace musí použít aktualizovatelný dotaz."

Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.

Projděte si také anglickou verzi článku:175168
Příznaky
Následující běžné chyby mohou nastat při použití datové objekty ActiveX(ADO) s Active Server Pages (ASP):
Microsoft OLE DB Provider pro ovladače ODBC chyba '80004005'
[Microsoft][Ovladač ODBC aplikace Microsoft Access 97] Operace musí použít aktualizovatelný dotaz.
Příčina
Tento článek popisuje čtyři primární příčiny této chyby a odpovídající řešení. Přestože tento článek odkazuje k databázím Microsoft Access, zde uvedené informace platí také pro jiné typy databází.
Řešení
Tato chyba obvykle zjištěna, když skript se pokusí provéstAKTUALIZACE nebo jiné akce, který mění informace v databázi.K této chybě dochází, protože nelze zapisovat do databáze jednoho z objektů ADOz následujících důvodů:

  1. Nejčastější příčinou je, že účet Internet Guest (IUSR_MACHINE), která je ve výchozím nastavení součástí "" skupinu Everyone, nemá oprávnění k zápisu pro soubor databáze (MDB). Chcete-li tento problém vyřešit, pomocí karty zabezpečení v aplikaci Explorer upravit vlastnosti tohoto souboru tak, aby byl správný účet Guest na Internetuoprávnění.

    POZNÁMKA:: Při použití databází aplikace Microsoft Access s objekty ADO, je také nezbytné udělit oprávnění k zápisu účtu Internet Guest na adresář obsahující soubor MDB. Je to proto, že Jet vytvoří soubor LDB zpracování uzamčení databáze. Můžete také udělit oprávnění pro čtení i zápis do složky "Temp", protože Jet může vytvářet dočasné soubory v tomto adresáři.
  2. Druhá příčina této chyby je, že databáze nebyl otevřen ssprávný režim pro zápis. Pokud provádíte otevřít připojeníobjekt, použijte vlastnost režim zda oprávnění napřipojení, jak je znázorněno zde:
          SQL = "UPDATE Products Set UnitPrice = 2;"      Set Conn = Server.CreateObject("ADODB.Connection")      Conn.Mode = 3      '3 = adModeReadWrite      Conn.Open "myDSN"      Conn.Execute(SQL)      Conn.Close						
    POZNÁMKA:: Ve výchozím režimu nastavena na 0(adModeUnknown), který obecně umožňuje aktualizace.
  3. Další příčinou této chyby je, že může být nastavení "Pouze pro čtení"zkontrolovat na stránce Možnosti pro tento zdroj dat DSN správce ODBC.
  4. Poslední problému a řešení se vztahuje k jakékoli zdroje dat SQL. Chyby mohou být způsobeny příkazů SQL, které porušují referenční integritudatabáze. Zde je několik nejčastějších dotazů, které selhání:
    • Nejjednodušší skupiny řešit jsou nelze změnit: křížové tabulky,Akce předávací, unie, nebo aktualizovat (nebo vytvářecí) SQL dotazymít vlastnosti UniqueValue nastavena na hodnotu Ano.

    • Další velmi běžnou příčinou je při spojení zahrnuje propojené tabulky ODBCjedinečné indexy nemají. V tomto případě neexistuje žádný způsob pro SQLzaručit, že jsou záznamy v tabulce, která má jedinečné pole, jehožhodnota se bude měnit s dotazem.

    • Jednou z příčin mají robustní řešení. Pokud se pokusíte aktualizovat spojenípole na straně "1", "1 n" dotazu se nezdaří, pokudZapnutí kaskádové aktualizace. Tímto způsobem můžete delegovat referenčníintegrita stroje JET.
Prohlášení
Toto chování je záměrné.

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 175168 - Poslední kontrola: 04/23/2011 16:11:00 - Revize: 6.0

Microsoft Active Server Pages 4.0, Microsoft Internet Information Services 5.0, Microsoft ActiveX Data Objects 2.7, Microsoft Data Access Components 2.5, Microsoft Data Access Components 2.6, Microsoft Data Access Components 2.7

  • kbdatabase kberrmsg kbprb kbmt KB175168 KbMtcs
Váš názor
html>html>body>