Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
SQL-databas i Förhandsversion av Microsoft Fabric
Konverterar en ogiltig geometriinstans till en geometriinstans med en giltig OGC-typ (Open Geospatial Consortium).
Syntax
.MakeValid ()
Return Types
SQL Server-returtyp: geometri
CLR-returtyp: SqlGeometry
Remarks
Den här metoden kan orsaka en ändring i typen av geometriinstans , samt orsaka att punkterna i en geometriinstans skiftar något.
Examples
Det första exemplet skapar en ogiltig LineString instans som överlappar sig själv och som används STIsValid() för att bekräfta att det är en ogiltig instans.
STIsValid() returnerar värdet 0 för en ogiltig instans.
DECLARE @g geometry;
SET @g = geometry::STGeomFromText('LINESTRING(0 2, 1 1, 1 0, 1 1, 2 2)', 0);
SELECT @g.STIsValid();
Det andra exemplet används MakeValid() för att göra instansen giltig och för att testa att instansen verkligen är giltig.
STIsValid() returnerar värdet 1 för en giltig instans.
SET @g = @g.MakeValid();
SELECT @g.STIsValid();
Det tredje exemplet verifierar hur instansen har ändrats för att göra den till en giltig instans.
SELECT @g.ToString();
I det här exemplet returneras värdena som en giltig MultiLineString instans när instansen LineString har valts.
MULTILINESTRING ((0 2, 1 1, 2 2), (1 1, 1 0))
I följande exempel konverteras CircularString-instansen till en Point-instans.
DECLARE @g geometry = 'CIRCULARSTRING(1 1, 1 1, 1 1)';
SELECT @g.MakeValid().ToString();
See Also
STIsValid (geometridatatyp)
Utökade metoder för geometriinstanser