'MSsql'에 해당되는 글 9건
- 2013.03.19 [MSSQL] 개발자를 위한 MS SQL Server 성능 조정 및 최적화
- 2013.03.19 [MSSQL] 전체 백업 유지관리 계획 만들기 4
- 2013.03.05 [MSSQL] LOCK 확인 및 처리 방법
- 2012.11.23 [MS-SQL] JOIN UPDATE / DELETE
- 2012.11.08 [MS-SQL] 날짜 차이 계산
- 2012.06.12 [MS-SQL] AUTO COMMIT 해제 방법
- 2011.12.14 [MS-SQL] CONVERT를 이용한 날짜 형식 변경 1
- 2010.11.30 [MSSQL] 날짜 함수
- 2010.10.20 [MSSQL] 테이블 복사
[MSSQL] 개발자를 위한 MS SQL Server 성능 조정 및 최적화
개발자를 위한 MS SQL Server 성능 조정 및 최적화, 제 1부: 성능 문제 개요
http://www.microsoft.com/korea/TechNet/sql/Technote/dat410ef.mspx
개발자를 위한 MS SQL Server 성능 조정 및 최적화, 제 2부: 쿼리 최적화 프로그램
http://www.microsoft.com/korea/TechNet/sql/Technote/dat411.mspx
'Database / Sql' 카테고리의 다른 글
[Oracle] Nested Loops, Sort Merge, Hash (0) | 2013.03.25 |
---|---|
[Oracle] PK 수정 (0) | 2013.03.25 |
[MSSQL] 전체 백업 유지관리 계획 만들기 (4) | 2013.03.19 |
[MSSQL] LOCK 확인 및 처리 방법 (0) | 2013.03.05 |
[Oracle] ROLLUP, GROUPING SETS (0) | 2013.02.13 |
[MSSQL] 전체 백업 유지관리 계획 만들기
MSSQL 2008 자동백업
http://blog.naver.com/nzeluki?Redirect=Log&logNo=10144576240
[출처] mssql 2008 전체 백업 유지관리 계획 만들기|작성자 nzeluki
'Database / Sql' 카테고리의 다른 글
[Oracle] PK 수정 (0) | 2013.03.25 |
---|---|
[MSSQL] 개발자를 위한 MS SQL Server 성능 조정 및 최적화 (0) | 2013.03.19 |
[MSSQL] LOCK 확인 및 처리 방법 (0) | 2013.03.05 |
[Oracle] ROLLUP, GROUPING SETS (0) | 2013.02.13 |
[Oracle] Session Timeout (0) | 2013.02.08 |
[MSSQL] LOCK 확인 및 처리 방법
SP_LOCK 이라는 저장프로시저를 통해 MSSQL Server Management Studio 에서 EXEC SP_LOCK 을 실행한다.
필요한건 Mode 와 spid 인데, Mode가 X로 표시된게 Lock이 걸린 세션이며, spid 값을 통해 처리가 가능하다.
세션을 강제 종료시키는 방법은 KILL spid 이지만,
또 발생시킬수 있을수 있으니 누가 소유자 인지 확인을 하고 종료를 시켜야 한다.
EXEC SP_WHO2 spid 로 누가 소유자 인지 확인하고,
DBCC INPUTBUFFER(spid) <-- 어떤 쿼리가 LOCK 걸리게 하였는지 확인할수 있다.
이와 같이 입력하여 EVENTINFO 를 확인해 본다.
SP_LOCK 을 통해 LOCK 된 세션이 있는지도 확인해본다.
'Database / Sql' 카테고리의 다른 글
[MSSQL] 개발자를 위한 MS SQL Server 성능 조정 및 최적화 (0) | 2013.03.19 |
---|---|
[MSSQL] 전체 백업 유지관리 계획 만들기 (4) | 2013.03.19 |
[Oracle] ROLLUP, GROUPING SETS (0) | 2013.02.13 |
[Oracle] Session Timeout (0) | 2013.02.08 |
[Oracle] 테이블 하나만 복원하기 (0) | 2013.02.07 |
[MS-SQL] JOIN UPDATE / DELETE
[예제] JOIN UPDATE
UPDATE TABLE_MAIN
SET TABLE_MAIN.REGUSR = '쫑'
FROM TABLE_JOIN
WHERE TABLE_JOIN.SEQNUM = TABLE_MAIN.SEQNUM
AND TABLE_JOIN.PROGBN = 'Y'
[예제] JOIN DELETE
DELETE TABLE_MAIN
FROM TABLE_JOIN
WHERE TABLE_JOIN.SEQNUM = TABLE_MAIN.SEQNUM
AND TABLE_JOIN.PROGBN = 'Y'
조인을 이용한 UPDATE/DELETE 구문의 FROM 절 이후는 똑같다.
'Database / Sql' 카테고리의 다른 글
[Oracle] PL/SQL PROCEDURE Scripts Sample 설명 (0) | 2012.11.27 |
---|---|
[Oracle] Toad 실행계획 (0) | 2012.11.23 |
[MS-SQL] 날짜 차이 계산 (0) | 2012.11.08 |
[Oracle] Toad for Oracle 기능 및 사용법 (파일첨부) (0) | 2012.11.08 |
[Oracle] 테이블 권한주기 (0) | 2012.11.06 |
[MS-SQL] 날짜 차이 계산
DATEDIFF 함수
입력받은 두 날짜 또는 시간이 얼마나 차이가 나는지 계산
OPTION : DD(일), HH(시), MI(분), SS(초), MS(밀리초)
[예제]
SELECT DATEDIFF( DD, '2012-11-06 11:34', GETDATE())
→ 2
SELECT DATEDIFF( HH , '2012-11-07 11:30', '2012-11-08 14:44')
→ 27
SELECT DATEDIFF( MI , '2012-11-07 11:30', '2012-11-08 14:44')
→ 1634
SELECT DATEDIFF( HH, '11:30', '14:44')
→ 3
'Database / Sql' 카테고리의 다른 글
[Oracle] Toad 실행계획 (0) | 2012.11.23 |
---|---|
[MS-SQL] JOIN UPDATE / DELETE (0) | 2012.11.23 |
[Oracle] Toad for Oracle 기능 및 사용법 (파일첨부) (0) | 2012.11.08 |
[Oracle] 테이블 권한주기 (0) | 2012.11.06 |
[Oracle] PL/SQL - 패키지 (Package) (0) | 2012.11.05 |
[MS-SQL] AUTO COMMIT 해제 방법
MS-SQL SERVER 2005
도구 > 옵션 > 쿼리 실행 > SQL SERVER > ANSISET IMPLICIT_TRANSACTIONS
체크 후 COMMIT / ROLLBACK 가능하다.
단, COMMIT / ROLLBACK 실행 이전까지 테이블 락이 잡혀서 외부에서 사용이 불가능하다.
TIP >>
오라클의 경우 UPDATE, DELETE, INSERT 문을 실행하고 COMMIT, ROLLBACK를 지정할수가 있다.
오라클 초기 설치시 자동으로 COMMIT 을 하지 않기 때문이다.
이에 비해 MS-SQL은 자동 COMMIT 을 한다.
COMMIT 실행하지 않아도 자동으로 시스템에서 COMMIT 을 하기 때문이다.
(물론 설정을 바꿀수는 있지만 그렇게 사용하는 사람은 많지 않을 것이다. )
ROLLBACK 을 할수 있는 경우는
BEGIN TRAN
UPDATE ....
위에 예처럼 BEGIN TRAN를 사용하여 UPDATE, DELETE, INSERT 한 후,
데이터가 이상이 없으면 COMMIT, 이상이 있는 경우 ROLLBACK을 하면 된다.
항상 DELETE, UPDATE 시 BEGIN TRAN을 사용하는 것을 권장한다.
'Database / Sql' 카테고리의 다른 글
[Oracle] Windows 64bit 오라클 Client 설치 (0) | 2012.07.11 |
---|---|
[Oracle] Toad vs Oracle Product Release History (0) | 2012.06.19 |
[Oracle] User 권한 보기 (0) | 2012.03.27 |
[Oracle] DATA DICTIONARY VIEW (0) | 2012.02.29 |
[Oracle] DBA_USER 확인 (0) | 2012.02.23 |
[MS-SQL] CONVERT를 이용한 날짜 형식 변경
SELECT CONVERT(VARCHAR, GETDATE(), 1) ' 1' -> 12/14/11
SELECT CONVERT(VARCHAR, GETDATE(), 2) ' 2' -> 11.12.14
SELECT CONVERT(VARCHAR, GETDATE(), 3) ' 3' -> 14/12/11
SELECT CONVERT(VARCHAR, GETDATE(), 4) ' 4' -> 14.12.11
SELECT CONVERT(VARCHAR, GETDATE(), 5) ' 5' -> 14-12-11
SELECT CONVERT(VARCHAR, GETDATE(), 8) ' 8' -> 13:07:49
SELECT CONVERT(VARCHAR, GETDATE(), 9) ' 9' -> 12 14 2011 1:07:49:520PM
SELECT CONVERT(VARCHAR, GETDATE(), 13) ' 13' -> 14 12 2011 13:07:49:520
SELECT CONVERT(VARCHAR, GETDATE(), 14) ' 14' -> 13:07:49:520
SELECT CONVERT(VARCHAR, GETDATE(), 20) ' 20' -> 2011-12-14 13:07:49
SELECT CONVERT(VARCHAR, GETDATE(), 21) ' 21' -> 2011-12-14 13:07:49.520
SELECT CONVERT(VARCHAR, GETDATE(), 22) ' 22' -> 12/14/11 1:07:49 PM
SELECT CONVERT(VARCHAR, GETDATE(), 23) ' 23' -> 2011-12-14
SELECT CONVERT(VARCHAR, GETDATE(), 25) ' 25' -> 2011-12-14 13:07:49.520
SELECT CONVERT(VARCHAR, GETDATE(), 101) '101' -> 12/14/2011
SELECT CONVERT(VARCHAR, GETDATE(), 102) '102' -> 2011.12.14
SELECT CONVERT(VARCHAR, GETDATE(), 103) '103' -> 14/12/2011
SELECT CONVERT(VARCHAR, GETDATE(), 104) '104' -> 14.12.2011
SELECT CONVERT(VARCHAR, GETDATE(), 105) '105' -> 14-12-2011
SELECT CONVERT(VARCHAR, GETDATE(), 111) '111' -> 2011/12/14
SELECT CONVERT(VARCHAR, GETDATE(), 112) '112' -> 20111214
SELECT CONVERT(VARCHAR, GETDATE(), 120) '120' -> 2011-12-14 13:07:49
SELECT CONVERT(VARCHAR, GETDATE(), 121) '121' -> 2011-12-14 13:07:49.520
'Database / Sql' 카테고리의 다른 글
[Oracle] 쿼리문 처리 과정 (0) | 2012.02.16 |
---|---|
[Oracle] USER_SOURCE (0) | 2011.12.27 |
[Oracle] 오라클 버전 확인 (0) | 2011.11.16 |
[Oracle] ORA-01476 : 제수가 0 (0) | 2011.11.16 |
[Oracle] RANK() 함수 Sample (0) | 2011.11.15 |
[MSSQL] 날짜 함수
SELECT DATEADD(MM, +1, '2010-08-08')
, CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23)
, SUBSTRING(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)+'-01'
, GETDATE()
, CONVERT(CHAR(10), GETDATE(), 121)
, DATEDIFF(DD, SUBSTRING(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)
+'-01', CONVERT(CHAR(10), GETDATE(), 121))
, DATEDIFF(DD, CONVERT(CHAR(10), GETDATE(), 121), SUBSTRING
(CONVERT(CHAR, DATEADD(MM, +1, '2010-08-08'), 23), 1, 7)+'-01')
결과 >>>
2010-09-08 00:00:00.000
2010-09-08
2010-09-01
2010-11-30 20:19:45.530
2010-11-30
90
-90
'Database / Sql' 카테고리의 다른 글
[Oracle] JOIN UPDATE (bypass_ujvc 힌트) (0) | 2011.05.25 |
---|---|
[MSSQL] WHERE 절에 CASE문 추가 (0) | 2011.03.21 |
[Oracle] 9i 이상에서 컬럼명 변경 (0) | 2010.11.11 |
[MSSQL] 테이블 복사 (0) | 2010.10.20 |
[Oracle] 다른 테이블 조인해서 UPDATE 하기 (0) | 2010.09.05 |
[MSSQL] 테이블 복사
select * into [생성될 테이블명] from [원본테이블명]
select * into [생성될 테이블명] from [원본테이블명] where'1'='2' ;
(데이터 없이 테이블 구조만 복사)
select * into [생성될 테이블명] from [원본테이블명] where'1'='1 ;
(데이터까지 복사)
단, 제약조건이나 Identity 정보는 복사되지 않는다.
'Database / Sql' 카테고리의 다른 글
[MSSQL] 날짜 함수 (0) | 2010.11.30 |
---|---|
[Oracle] 9i 이상에서 컬럼명 변경 (0) | 2010.11.11 |
[Oracle] 다른 테이블 조인해서 UPDATE 하기 (0) | 2010.09.05 |
[Oracle] TOAD 기본 단축키 (0) | 2010.08.05 |
[Oracle] PL/SQL (0) | 2010.06.29 |