Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL databáze v Microsoft Fabric
Převede geografickou instanci, která není platná, na platnou zeměpisnou instanci s platným typem OGC (Open Geospatial Consortium).
Pokud vstupní objekt vrátí hodnotu False pro stIsValid(), MakeValid() převede instanci, která není platná na platnou instanci.
Tato metoda zeměpisného datového typu podporuje instance FullGlobe nebo prostorové instance, které jsou větší než polokoule.
Syntax
.MakeValid ()
Návratové typy
Návratový typ SQL Serveru: zeměpisná oblast
Návratový typ CLR: SqlGeography
Remarks
Tato metoda může změnit typ zeměpisné instance. Body zeměpisné instance se navíc můžou mírně posunout. Výsledky některých metod, jako je například NumPoint(), se můžou změnit.
V případech, kdy neplatná prostorová instance protíná rovník a má ObálkaAngle() = 180, vrátí se instance FullGlobe . Metoda MakeValid() zeměpisného datového typu zajistí nejlepší pokus o vrácení platných instancí, ale výsledky nejsou zaručené, že budou přesné nebo přesné.
Note
Objekty, které nejsou platné, mohou být uloženy v databázi. Metody, které se dají spustit u neplatných instancí (těch instancí, pro které funkce STIsValid() vrací false, jsou metody, které kontrolují platnost nebo umožňují export: STIsValid(), MakeValid(), STAsText(), STAsBinary(), ToString(), AsTextZM() a AsGml().
Tato metoda není přesná.
Examples
První příklad vytvoří neplatnou LineString instanci, která se překrývá sama sebe a používá STIsValid() k potvrzení, že se jedná o neplatnou instanci.
STIsValid() vrátí hodnotu 0 pro neplatnou instanci.
DECLARE @g geography;
SET @g = geography::STGeomFromText('LINESTRING(0 2, 1 1, 1 0, 1 1, 2 2)', 4326);
SELECT @g.STIsValid();
Druhý příklad používá MakeValid() k ověření platnosti instance a k otestování, že instance je skutečně platná.
STIsValid() vrátí hodnotu 1 pro platnou instanci.
SET @g = @g.MakeValid();
SELECT @g.STIsValid();
Třetí příklad ověřuje, jak byla instance změněna, aby byla platná instance.
SELECT @g.ToString();
Pokud je v tomto příkladu LineString vybrána instance, vrátí se hodnoty jako platná MultiLineString instance.
MULTILINESTRING ((0 2, 1 1, 2 2), (1 1, 1 0))
Viz také
STIsValid (datový typ geometrie)
Rozšířené metody v zeměpisných instancích