Nelze použít přidávací dotazy v projektu aplikace Access v aplikaci Access 2002 přenesené

Překlady článku Překlady článku
ID článku: 294923 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Upřesnit: Vyžaduje poradce kódování, spolupráce a víceuživatelském dovednosti.

Tento článek se vztahuje pouze na projektu Microsoft Access (.adp).

Microsoft Access 2000 verzi tohoto článku naleznete 229681.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Při pokusu o spuštění přenesena přidávací dotaz v projektu Microsoft Access, může se zobrazit následující chybová zpráva:
V tabulce ' název tabulky nelze vložit explicitní hodnota pro sloupec identity, při IDENTITY_INSERT je nastavena na hodnotu OFF.

Příčina

Při vytváření nové databáze serveru SQL Server SQL Server 2000 Desktop Engine (včetně) jsou možnosti IDENTITY_INSERT nastaveny na OFF.

Pokud přenesení bude tabulku obsahující pole Automatické číslo dat zadejte pole vytvořena na serveru SQL jako sloupec IDENTITY. Na rozdíl od datovým typem nemůžete přímo upravovat IDENTITY sloupce ani explicitně vložte data do sloupce IDENTITY, zatímco možnost IDENTITY_INSERT tabulky je nastavena na OFF. Vložení nebo aktualizaci dat ve sloupci IDENTITY, musíte nastavit možnost IDENTITY_INSERTON.

Řešení

Pomocí příkazu SET IDENTITY_INSERT můžete nastavit možnost IDENTITY_INSERT. SET IDENTITY_INSERT vždy odkazuje na tabulku a měli byste umístit před příkaz UPDATE nebo INSERT, který upravuje nebo vloží data do sloupce IDENTITY. Následující příklad nastaví IDENTITY_INSERT pro tabulku NewEmployees.
   SET IDENTITY_INSERT NewEmployees ON
				

Další informace

Kroky pro reprodukci tohoto chování

  1. Otevřete ukázkovou databázi Northwind.mdb.
  2. V okně Databáze klepněte na tabulku Zaměstnanci a v nabídce Úpravy klepněte na příkaz Kopírovat.
  3. V nabídce Úpravy klepněte na tlačítko Vložit. V dialogovém okně Vložit tabulku jako zadejte NewEmployees v poli Název tabulky. Klepněte na tlačítko OK.
  4. Vytvořit nový dotaz v návrhovém zobrazení a potom zavřete dialogové okno Zobrazit tabulku bez přidání tabulek nebo dotazů.
  5. V nabídce Zobrazit klepněte na tlačítko Zobrazit SQL.
  6. Do okna SQL zadejte následující příkaz INSERT INTO. Tento příkaz bude vytvořte přidávací dotaz:
       INSERT INTO 
              NewEmployees (EmployeeID, LastName, FirstName, Title,
              TitleOfCourtesy, BirthDate, HireDate, Address, City, Region,
              PostalCode, Country, HomePhone, Extension, Photo, Notes,
              ReportsTo)
       SELECT 
              Employees.EmployeeID, Employees.LastName, Employees.FirstName,
              Employees.Title, Employees.TitleOfCourtesy, Employees.BirthDate,
              Employees.HireDate, Employees.Address, Employees.City,
              Employees.Region, Employees.PostalCode, Employees.Country,
              Employees.HomePhone, Employees.Extension, Employees.Photo,
              Employees.Notes, Employees.ReportsTo
       FROM 
              Employees;
    					
  7. Jako qryAppend dotaz uložte a zavřete dotaz.
  8. V nabídce Nástroje přejděte na položku Správa databáze a potom klepněte na položku Průvodce přenesením.
  9. Dokončete kroky v Průvodci přenesením a přijmout výchozí výběry s výjimkou níže uvedených:
    Vytvořit nová databáze: Ano
    Které tabulky chcete exportovat na SQL Server: Export všech tabulek
    Přidat do tabulek pole časového razítka: Ne, nikdy
    Vytvoření nové aplikace Access typu klient/server: Ano
  10. Po dokončení Průvodce přenesením zavřete sestavu přenesení.
  11. Pokuste se spustit proceduru qryAppend uloženy a poznamenejte si chybovou zprávu.
  12. Chcete-li nastavit ON IDENTITY INSERT, přidejte následující řádek SQL qryAppend uložené procedury po klíčové slovo AS:
       SET IDENTITY_INSERT NewEmployees ON
    						
    při dokončíte, uložené procedury by měl vypadat následující text:
       ALTER PROCEDURE qryAppend
       AS
       SET IDENTITY_INSERT NewEmployees ON
       INSERT INTO 
              NewEmployees (EmployeeID, LastName, FirstName, Title,
              TitleOfCourtesy, BirthDate, HireDate, Address, City, Region,
              PostalCode, Country, HomePhone, Extension, Photo, Notes,
              ReportsTo)
       SELECT 
              Employees.EmployeeID, Employees.LastName, Employees.FirstName,
              Employees.Title, Employees.TitleOfCourtesy, Employees.BirthDate,
              Employees.HireDate, Employees.Address, Employees.City, 
              Employees.Region, Employees.PostalCode, Employees.Country, 
              Employees.HomePhone, Employees.Extension, Employees.Photo, 
              Employees.Notes, Employees.ReportsTo
       FROM 
              Employees
    					
  13. Uložte upravený uložené procedury a potom spustit. Poznámka: uspěje.

Odkazy

Další informace o IDENTITY INSERT odkazovat na SQL Server Books Online. Stáhnout SQL Server Books Online, navštivte následující web společnosti Microsoft:
http://technet.microsoft.com/en-us/sqlserver/bb331756.aspx

Vlastnosti

ID článku: 294923 - Poslední aktualizace: 14. února 2014 - Revize: 3.3
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Access 2002 Standard Edition
Klíčová slova: 
kbnosurvey kbarchive kbmt kbclientserver kberrmsg kbprb KB294923 KbMtcs
Strojově přeložený článek
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:294923

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com