2013-04-26 2 views
0

필자는 데이터베이스에 좌표를 넣으려고 할 때마다 그 값을 <Binary data>이라고 말합니다.Ms Sql Server 2012의 지리 유형이 바이너리로 저장됩니까?

나는

geography::STGeomFromText('LINESTRING(-122.360 47.656, -122.343 47.656)', 4326) 
geography::STPointFromText('POINT(55.9523783996701 -3.2051030639559)', 4326) 
geography::Point(51.4618933852762, -0.926690306514502, 4326) 

그냥 <Binary data> 말을 그것을위한 정상입니까

를 시도?

답변

0

예, 내부적으로 UDT (사용자 정의 유형) (geography 구현 방법)는 바이너리로 저장되지만 데이터베이스 엔진은 이보다 더 많은 것으로 인식합니다.

SQL Server는 액세스 할 때 .NET 개체를 자동으로 deserialize하고 .NET 개체를 저장소의 이진 파일로 serialize합니다. 당신이 UDT 인스턴스의 메소드를 호출 할 때 변수 또는 열에 여부를

그래서, 그들은 당신이 기대하는 것처럼 응답 :

declare @var geography = 
     geography::Point(51.4618933852762, -0.926690306514502, 4326); 

select @var.ToString() 
+0

은 어쨌든 그것을 보여 얻기 위해 당신은 디자이너에서 볼 때. 킨다는 그것을 볼 때 시각적으로 볼 수 있습니다. – chobo2