mssql 2005 디비 복원 주의할 점

11-11-28 by 최고관리자

mssql 2005를 이용한 백업실행, bak 파일로 복원 절차입니다. sql2005 를 이용한 백업후 2005 다른 서버로 이전복원시 주의할점이 있습니다 백업시 DATABASE 단위로 백업을 했다면, 복원시 역시 DATABASE를 선택을 해야합니다.백업시 Files and Filegroup 단위로 백업을 했다면, 복원시 역시 Files and Filegroup 로 선택해서 해야합니다.안그러면 다음과 같은 에러가 납니다.Msg 3154, Level 16, State 4, Line 1The back…

데이터베이스 연결 후 사용자 맵핑하기

11-11-28 by 최고관리자

[문제] 기존 데이터베이스를 분리한 후 DB 파일들을 복사해서 다른 서버에 연결할 때, 소유자가 dbo가 아닌 경우 객체에 권한을 동일하게 유지하는 방법은? 기존과 똑같은 user_id를 생성시켰어도 연결한 데이터베이스의 사용자명과는 다르게 인식되어 ‘select * from [table_name]’만으로 쿼리가 안되는 경우 이렇게 밖에 쿼리가 안되죠. ==> ‘select * from [owner].[table_name]’ -------------------------------…

MSSQL2000에서 2005 Database 이전(백업파일로 이전)

11-11-25 by 최고관리자

1. 실 DB 풀 백업 2. 백업파일 이전 서버로 이전 3. DB 물리적 위치 확인 restore filelistonly from disk = 'E:DB파일명.BAK'; 4. DB 복원 use master restore database [DB명] from disk = 'C:DB파일명.BAK' WITH FILE = 1, MOVE 'DB명_Data' to 'C:Microsoft SQL ServerMSSQL.1MSSQLDataDB명_Data.MDF', MOVE 'DB명_Log…

Transaction Isolation Level(격리수준)을 이해하기

11-11-25 by 최고관리자

이번 기사에서는 지난 Deadlock 발생을 감소시키는 방법 기사에서 언급되었던 한 세션 상의 모든 SELECT 문장에 대한 디폴트 트랜잭션 잠금 동작을 제어하는 Transaction Isolation Level에 대하여 알아보자.트랜잭션에서 일관성이 없는 데이터를 허용하도록 하는 수준을 Isolation Level(격리수준)이라고 한다. 예를 들어, 한 사용자가 어떠한 데이터를 수정하고 있는 경우 다른 사용자들이 그 데이터에 접근하는 것을 차단함으로써 완전한 데이터만을 사용자들에게 제공하게 된다…

mssql lock에 대한 좋은 자료

11-11-25 by 최고관리자

출처 : http://blog.daum.net/lords001/582427 ** LOCK ** 트랜잭션은 LOCK 과 떨어져서 설명될 수 없는 관계이고, LOCK 도 트랜잭션 없이 설명될 수 없다. LOCK 즉 잠금의 문제는 동시성 문제이다. 어떤 자원을 누군가 사용하고 있다면 어떤 형태로든 잠금이 설정된다. 그리고 그 잠금의 종류에 따라서, 해당 자원은 다른 사람이 어느 한계까지만을 사용할 수도 있고 아예 엑세스 자체도 불가능할 수도 있다. 그래서 여러 사용자가 함께 사용하는 응용프로그램이거나 …

데이터베이스 이관시 로그인 맵핑 문제

11-11-25 by 최고관리자

데이터베이스 이관 작업시 로그인 계정과 데이터베이스 User간에 맵핑을 함에 있어서 문제가 발생하여 기록. 아래는 쿼리의 DB 구성은 1. Wizen_Master 데이터베이스의 User : wizen_master 2. Wizen_SeoulMilk 데이터베이스의 User : wizen_master, wizen_seoulmilk use [wizen_master]go--로그인 계정 생성create login wizen_master with password = '12345'go--로그인 계정에 연결…

SQLInject Check Function

11-11-25 by 최고관리자

출처 : http://cafe.naver.com/masterexcel/216CREATE FUNCTION DBO.UDF_CheckForSQLInjection ( @tSqlstring varchar(max) ) returns bit asBEGINDECLARE @IsSuspect bit SET @TSQLString = ' ' + @TSQLString IF (PATINDEX('% xp_%' , @TSQLString ) <> 0 OR PATINDEX('% sp_%' , @TSQLStri…

TABLE에서 컬럼을 비교할 때 한글인지/영어인지/제2외국어인지

11-11-25 by 최고관리자

-- 단순아스키로 비교는 무리가 있을것 같습니다.-- 유니코드로 변형한뒤에 비교를 하시는것이 좋을 것 같습니다.-- 완성형에 들어가지 않는 'ㅤㄸㅗㅁ' 이나 'ㄱ' 자모는 '가-ㅤㅎㅣㅎ' 의 범위를 벗어납니다. SELECT ASCII('ㅤㄸㅗㅁ'), ASCII('ㄱ') /* ----------- -----------140 164 (1개 행 적용됨)*/ --한글 유니코드의 범위는 다음과 같습니다.--Hangul Syllables Range …

특정 문자의 갯수를 카운트 하기

11-11-25 by 최고관리자

[문자열함수응용] 특정 문자의 갯수를 카운트 하기 1. 함수명 : Substitute() / Len()2. 함수 기능 : 문자열에서 특정한 문자의 갯수를 카운트 할때3. 사용법 : 4. 사용 예 : A1셀에서 "b" 문자의 갯수를 세어보기 A(데이터)B(함수)C(결과)1abbcccdddd=Len(A1)-Len(Substitute(A1,"b",))2(=10-8) 설명 : A1 문자의 갯수를 Len함수로 센후, "b"문자를 공백으로 바꾼후 A1 문자수를 카운트하면"b" 문자의 갯수를 알수…

.bak파일로 Database 복원하기 (Mssql 2000,2005,2008)

11-11-24 by 최고관리자

출처 : http://nekomimi.tistory.com/253 [실행 전 주의사항] 3번 의 복원 DB명은 생성하면 안됨. (Restore = Create the Database, Unique DB Name)확인(1)RESTORE HADERONLY FROM DISK = '(A)backup file path and name'확인(2)RESTORE FILELISTONLY FROM DISK = '(A)backup file path and name'복원RESTORE DATABASE '(B)databa…

함수 모음 및 사용법

11-11-15 by 최고관리자

1) Ascii() - 문자열의 제일 왼쪽 문자의 아스키 코드 값을 반환(Integer)예) SELECT Ascii('abcd') 결과 >> a의 아스키 코드값인 97 반환 2) Char() - 정수 아스키 코드를 문자로 반환(Char)예) SELECT Char(97) 결과 >> a 반환 3) Charindex() - 문자열에서 지정한 식의 위치를 반환예) SELECT Charindex('b','abcde') 결과 >> 2 …

주석달기

11-02-15 by 최고관리자

테이블에 주석달기EXEC   sp_addextendedproperty 'MS_Description', '공지사항', 'user', dbo, 'table',age_board2컬럼에 주석달기EXEC   sp_addextendedproperty 'MS_Description', '참조번호', 'user', dbo, 'table', age_board2, 'column', ref

테이블 소유권 dbo 로 변경

10-12-06 by 최고관리자

테이블alter schema dbo transfer 사용자.테이블전체EXEC SP_MSFOREACHTABLE 'sp_changeobjectowner ''?'' , ''dbo'''

mysql에서 오라클의 decode 대용

10-12-03 by 최고관리자

mysql은 decode 가 없나보다. 그럼 어떻게??   아래와 같은 대안을 생각해볼 수 있겠다. <오라클> select decode(col, '점심', '샌드위치','저녁','삼겹살','아무거나') as menu from tableName;   <mysql> select case col when '점심' then '샌드위치'                        when '저녁' then '삼겹살'                        else '아무거나' en…

mysql 형변환 cast

10-11-18 by 최고관리자

SELECT enddate, ceiling((enddate - unix_timestamp()) / 86400) AS remain_dateFROM tbl_hompi_file_board_listWHERE fbno = 132   enddate는 int로 게시물 작성시 unix_timestamp를 삽입 했다.   게시물의 만료일을 추출하려 하였으나 의도와는 다르게 아래와 같이 원하지 않은 데이터가 나왔다.   enddate      remain_date 1279712499  213503982334575 …