Zakázání kontrolních omezení pro replikaci
platí pro: SQL Server 2016 (13.x) a novější
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
databáze SQL v Microsoft Fabric
Kontrolu omezení v SQL Serveru můžete zakázat pomocí aplikace SQL Server Management Studio nebo jazyka Transact-SQL. Můžete také explicitně zakázat omezení kontroly replikace, což může být užitečné, pokud publikujete data z předchozí verze SQL Serveru.
Poznámka
Pokud je tabulka publikovaná pomocí replikace, omezení kontroly jsou automaticky zakázána pro operace prováděné agenty replikace. Když agent replikace provede vložení, aktualizaci nebo odstranění u odběratele, omezení se nekontroluje; pokud uživatel provede vložení, aktualizaci nebo odstranění, je omezení zaškrtnuté. Omezení je pro agenta replikace zakázané, protože omezení bylo již zkontrolováno v Publisheru, když byla data původně vložena, aktualizována nebo odstraněna. Další informace naleznete v tématu Zadat možnosti schématu.
Než začnete
Bezpečnost
Dovolení
Vyžaduje oprávnění ALTER na tabulce.
Použití aplikace SQL Server Management Studio
Zakázání kontrolního omezení pro replikaci
V Průzkumník objektůrozbalte tabulku s kontrolním omezením, které chcete upravit, a potom rozbalte složku Omezení.
Klikněte pravým tlačítkem myši na kontrolní omezení, které chcete upravit, a pak klepněte na Upravit.
V dialogovém okně Kontrola omezení v části Návrhář tabulkyvyberte pro Vynucení pro replikacihodnotu Bez.
Klikněte na Zavřít.
Použití Transact-SQL
Jak zakázat kontrolní omezení pro replikaci
V Průzkumníku objektůse připojte k instanci databázového stroje.
Na panelu Standard klikněte na Nový dotaz.
Zkopírujte a vložte následující příklad do okna dotazu a klikněte na Spustit. Příklad vytvoří tabulku se sloupcem IDENTITY a omezením CHECK v tabulce. Příklad pak omezení zahodí a znovu vytvoří zadáním klauzule NOT FOR REPLICATION.
USE AdventureWorks2022; GO CREATE TABLE dbo.doc_exd (column_a int IDENTITY (1,1) CONSTRAINT exd_check CHECK (column_a > 1)) ALTER TABLE dbo.doc_exd DROP CONSTRAINT exd_check; GO ALTER TABLE dbo.doc_exd ADD CONSTRAINT exd_check CHECK NOT FOR REPLICATION (column_a > 1);
Další informace viz ALTER TABLE (Transact-SQL).