본문 바로가기

MSSQL

(38)
테이블에 자동증가 primary 컬럼 한번에 추가하기 USE 데이터베이스 ALTER TABLE 테이블명 ADD 컬럼명 INT IDENTITY CONSTRAINT PK_키이름 PRIMARY KEY CLUSTERED(컬럼명)출처 : https://goo.gl/aj4j6R
[c#] mssql spatial data 길이 취급 주의 geometry/geography varbinary(max) 가 한계 길이 STAsText() 로 Sql Management에서 취급하는 것은 한계가 있다. UnitTest 나 Console 프로그램에서 Binary로 전송 된 Data 들을 다시 Text로 변환 후 수정하고 다시 Binary 로 업데이트 한다. 주고 받는 형식은 sql 쪽은 Binary C# 쪽에서는 Bytes로 취급한다.
[c#][mssql] Spatial Data type을 취급하기 위한 필수 패키지 C# 코딩에서 mssql Spatial Type을 취급하기 위한 필수 nuget 패키지 DotSpatial.Projections- 좌표계 변환 함수 포함 GeoJSON for Entity Framework 6 Spatial Data and WKT- Spatial m WKT 타입을 GeoJSON 으로 변경하는 함수 Microsoft.SqlServer.Types- Sql 서버의 타입 정의
[spatial data] 공간인덱싱 msdn - 공간인덱싱 개요 https://goo.gl/1MTmEL 인덱싱 심화 https://goo.gl/BDXpsq 대한민국 위/경도 범위 https://goo.gl/Fx1rmr Q : Spatial index statistics missing https://goo.gl/Bo8Juk 인덱스 통계보기 declare c cursor static for select object_id, name, index_id from sys.indexes where type_desc = 'SPATIAL' open c declare @obj int declare @statsname varchar(max) declare @indid int declare @tname varchar(max) fetch next from c i..
[mssql] SP에서 특정 TEXT 검색 use {{databaseName}} SELECT DISTINCT 'EXEC sp_helptext [' + SCHEMA_NAME(SCHEMA_ID) + '.' + OBJECT_NAME(A.id) + ']' FROM sys.syscomments A INNER JOIN sys.objects B ON A.id = B.object_id WHERE TEXT LIKE '%{{검색어}}%' SELECT OBJECT_NAME(object_id) FROM sys.sql_modules WHERE definition LIKE '%{{검색어}}%' 출처 : http://modellerr.tistory.com/35
[mssql] 튜닝 #1 - insert , delete 로 인한 duration sql profiler 를 돌려보면 read / write row는 별로 없지만 duration 이 2000 ms 이상 씩 잡히는 쿼리들이 있습니다. 아무리 index 와 나누기 실행을 해도 쿼리 실행 시간이 줄어들지 않습니다. 이유는 db 의 복구 모델의 구분에서 찾을 수 있는데요. insert, delete 시에는 로그를 생성하는데 전체, 대량로그 모델의 경우 로그 생성까지 실행 시간에 포함됩니다. 이런 작업들이 빈번한 테이블만 따로 단순 복구 모델의 db로 모아서 처리하면 insert,delete 로 인한 비용이 발생하지 않습니다. 단순 모델의 db에 적당한 테이블의 성격을 정리하면 1. 빈번하게 select 되는 퍼포먼스를 요하는 테이블 2. 원시 데이터가 존재하고 가공된 정보를 모으는 테이블 정..
[mssql] 트랜잭션 로그가 꽉 찼습니다. 데이터베이스를 만들고 한 번도 로그 백업을 하지 않으면 만날 수 있는 에러 메세지입니다. 정기적으로 트랜잭션 로그백업을 하고 크기를 줄여주어야 하는데요. 자동 축소 옵션이 있으나 오버로드가 존재하며 직접 크기를 줄여주는 작업을 해주어야 합니다. step 1 비상 트랜잭션 백업하기 트랜잭션 백업하기(SSMS) step 2 백업로그 파일 크기 줄이기 참조 : 트랜잭션 로그 파일의 크기 관리 https://msdn.microsoft.com/ko-kr/library/ms365418.aspx 꽉 찬 트랜잭션 로그 문제 해결(SQL Server 오류 9002) https://msdn.microsoft.com/ko-kr/library/ms175495.aspx 로그 자동축소에 관한 글 http://www.sqler.c..
[sql] 비상 로그(트랜잭션로그) 백업 //비상 로그(트랜잭션로그) 백업 – 장애 발생시 현재까지의 트랜잭션 로그 백업을 진행합니다. // WITH NORECOVERY 로 백업 중 상태를 만든 후 백업을 진행하고 복구를 진행한다.//복구 과정에 에러 메세지를 보고싶지 않다면 비상로그 백업을 꼭 해야합니다. USE MASTER; BACKUP LOG {{db_name}} to DISK = 'C:\Backup\TransactionLog\{{db_name}}\{{db_name}}_backup_2017_04_24_142101_EMRGENCY.trn' WITH NORECOVERY