'2009/03'에 해당되는 글 8건

  1. 2009/03/20 역시 부족하구나 (6)
  2. 2009/03/19 SET XACT_ABORT ON
  3. 2009/03/16 사내 웹진에 떴습니다. (8)
  4. 2009/03/15 2006년 7월 일본 출장
  5. 2009/03/15 우에노 복어 요리집
  6. 2009/03/08 COUNT(*) , COUNT(컬럼명)
  7. 2009/03/07 임시테이블, 테이블변수 비교
  8. 2009/03/06 택시 승하차 시간이... (2)
본인이 인간적인 면으로 뛰어난가?

대답은 아니요

참 이것저것 부족한것 많은 인간이다..

다른 사람에 대한 배려와 존중을 잊지 말자..

죄송합니다. (__)

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거

-- 테스트 테이블 생성
CREATE TABLE 테스트
(
   
컬럼 INT NOT NULL
    , CONSTRAINT PK_테스트 PRIMARY KEY CLUSTERED
    ( 
        컬럼 ASC
    )
)

-- 테스트 데이터 입력
INSERT INTO 테스트 VALUES(1)
INSERT INTO 테스트 VALUES(2)
INSERT INTO 테스트 VALUES(3)

-- 데이터 확인
SELECT * FROM 테스트




-- 테스트1
BEGIN TRAN

    DELETE
FROM 테스트 WHERE 컬럼 = 1
    INSERT INTO 테스트 VALUES(2)
    INSERT INTO 테스트 VALUES(4)

COMMIT


--결과 에러
(1개 행이 영향을 받음)

메시지 2627, 수준 14, 상태 1, 줄 5
PRIMARY KEY 제약 조건 'PK_테스트'을(를) 위반했습니다. 개체 'dbo.테스트'에 중복 키를 삽입할 수 없습니다.
문이 종료되었습니다.

(1개 행이 영향을 받음)



-- 데이터 확인
SELECT * FROM 테스트




- 결과
DELETE FROM 테스트 WHERE 컬럼 = 1 에러 없이 실행되었고
INSERT INTO 테스트 VALUES(2) 에러 발생
INSERT INTO 테스트 VALUES(4) 에러없이 실행

DELETE 문이 ROLLBACK 되지 않는다.
에러 발생시의 ROLLBACK 처리가 없으니 당연히 ROLLBACK 되지 않는다.




--테스트2

-- 데이터 확인
SELECT * FROM 테스트



-- 테스트(트랜잭션 사용)
SET XACT_ABORT ON
BEGIN
TRAN

    DELETE
FROM 테스트 WHERE 컬럼 = 2
    INSERT INTO 테스트 VALUES(3)
    INSERT INTO 테스트 VALUES(5)

COMMIT


--결과 에러
(1개 행이 영향을 받음)
메시지 2627, 수준 14, 상태 1, 줄 5
PRIMARY KEY 제약 조건 'PK_테스트'을(를) 위반했습니다. 개체 'dbo.테스트'에 중복 키를 삽입할 수 없습니다.



-- 데이터 확인
SELECT * FROM 테스트


- 결과
DELETE FROM 테스트 WHERE 컬럼 = 1 에러 없이 실행되었고
INSERT INTO 테스트 VALUES(2) 에러가 발생하면서 ROLLBACK 된다.
INSERT INTO 테스트 VALUES(5) 실행되지 않는다.

SQL 2005의 경우 TRY CATCH문을 이용해서 ROLLBACK 처리를 하면 편하지만
SQL 2000은 SQL문 한번 실행할때마다 에러 발생시 ROLLBACK 처를 해줘야되는데
SET XACT_ABORT ON 을 이용하면 좀 더 편하게 사용할 수 있다.



SQL 2005의 경우 아래의 쿼리와 같다.
BEGIN TRY 
    BEGIN TRAN

        DELETE FROM 테스트 WHERE 컬럼 = 2
        INSERT INTO 테스트 VALUES(3)
        INSERT INTO 테스트 VALUES(5)

    COMMIT TRAN
END TRY

BEGIN
CATCH
    ROLLBACK TRAN
END CATCH


SQL 2000의 경우 아래의 쿼리와 같다.
BEGIN TRAN

    DELETE FROM 테스트 WHERE 컬럼 = 2
    IF(@@ERROR <> 0) GOTO ROLLBACK_PROCESS

    INSERT INTO 테스트 VALUES(3)
    IF(@@ERROR <> 0) GOTO ROLLBACK_PROCESS

    INSERT INTO 테스트 VALUES(5)
    IF(@@ERROR <> 0) GOTO ROLLBACK_PROCESS

    GOTO COMMIT_PROCESS

ROLLBACK_PROCESS:
BEGIN
    ROLLBACK
    RETURN
END

COMMIT_PROCESS:

BEGIN
    COMMIT
    RETURN
END



 

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거
예전에 MGAME에 근무할때 일본 지사 출장 갔다왔을때 사진..
하드 정리하다보니 찾아서 그냥 올림..

NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/250sec | F/20.0 | +0.33 EV | 34.0mm | Flash did not fire. | 2006:07:09 09:44:26


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/250sec | F/20.0 | +0.33 EV | 48.0mm | Flash did not fire. | 2006:07:09 09:45:53


NIKON CORPORATION | NIKON D70s | Aperture priority | Spot | 1/50sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:13 20:35:58


NIKON CORPORATION | NIKON D70s | Aperture priority | Spot | 1/40sec | F/4.2 | +0.33 EV | 70.0mm | Flash did not fire. | 2006:07:13 21:11:38


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/320sec | F/11.0 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 10:31:26


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/250sec | F/10.0 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 11:26:24


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/500sec | F/9.0 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 12:13:46


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/1600sec | F/4.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 14:36:23


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/800sec | F/4.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 15:18:30


NIKON CORPORATION | NIKON D70s | Manual | Pattern | 1/50sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 21:35:05


NIKON CORPORATION | NIKON D70s | Manual | Pattern | 1/50sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 21:37:57


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/10sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:15 21:45:31


NIKON CORPORATION | NIKON D70s | Manual | Pattern | 1/10sec | F/4.0 | +0.33 EV | 62.0mm | Flash did not fire. | 2006:07:15 21:47:48


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/124sec | F/4.0 | +0.33 EV | 56.0mm | Flash did not fire. | 2006:07:16 12:18:10


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/124sec | F/4.0 | +0.33 EV | 31.0mm | Flash did not fire. | 2006:07:16 12:22:33


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/40sec | F/4.0 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 12:37:05


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/80sec | F/4.0 | +0.33 EV | 27.0mm | Flash did not fire. | 2006:07:16 13:06:11


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/800sec | F/4.5 | +0.33 EV | 135.0mm | Flash did not fire. | 2006:07:16 15:10:22


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/1000sec | F/3.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 15:11:36


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/40sec | F/3.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 16:55:06


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/20sec | F/3.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 17:05:10


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/40sec | F/3.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 17:06:44


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/80sec | F/3.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 17:11:14


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/6sec | F/3.8 | +0.33 EV | 56.0mm | Flash did not fire. | 2006:07:16 19:26:16


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/4sec | F/3.5 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 19:29:50


NIKON CORPORATION | NIKON D70s | Manual | Pattern | 1/10sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 19:42:56


NIKON CORPORATION | NIKON D70s | Manual | Pattern | 1/10sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 19:51:08


NIKON CORPORATION | NIKON D70s | Manual | Pattern | 1/10sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 19:55:05


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/160sec | F/4.2 | +0.33 EV | 80.0mm | Flash did not fire. | 2006:07:16 20:46:12


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/1250sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 20:50:59


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/250sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 21:01:11


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/400sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:16 21:11:04


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/640sec | F/4.0 | +0.33 EV | 62.0mm | Flash did not fire. | 2006:07:17 12:09:57


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/2000sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:17 12:40:52


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/2500sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:17 13:43:27


NIKON CORPORATION | NIKON D70s | Aperture priority | Pattern | 1/200sec | F/2.8 | +0.33 EV | 24.0mm | Flash did not fire. | 2006:07:17 15:28:39


크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거
http://www.hotpepper.jp/A_20100/strJ000001887.html

예전에 출장갔다가 갔었던

우에노에 있는 복어 요리집

복어 샤브샤브, 불고기가 아주 맛있는집..

한동안 잊고 있다가 일본에 계신 "오이시" 님이 찾아달라고 찾아봤다.

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거

 

--테스트 테이블 생성
create table 테이블
(
    컬럼 varchar(10) null
)

insert into 테이블 (컬럼) values ('가' )
insert into 테이블 (컬럼) values ('나' )
insert into 테이블 (컬럼) values (null)

--null 포함
select count(*) from 테이블




--null 포함 안함
select count(컬럼) from 테이블


count(*)은 null을 포함하지만 count(컬럼명)은 null을 포함 안한다.

ㅡㅡ) 그동안 까먹고 있었다.

역시 내 머리는 나쁘다 ㅠ0ㅠ

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거


 

임시테이블

테이블변수

실행 후 데이터 존재

- 임시테이블은 데이터 삭제
- 전역 임시테이블은 데이터 삭제 안함
   (tempdb에 저장)

- 데이터 삭제

인덱스 정의

- 모든 인덱스 정의 가능

- 스키마를 정의할 때 PK 만 잡을 수 있다.

속도

- 데이터가 많은 경우 테이블변수보다 빠름
- 인덱스가 잘 잡혀 있으면 빠름
  (tempdb 성능의 영향을 받음)

- 데이터가 적을 때 테이블변수가 임시테이블보다 빠름
- 메모리에서 처리하기 때문에 속도 빠름
- 처리용량에 한계 있음

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거


야간 퇴근 택시비 청구할려고 영수증을 봤더니..

승하차시간이 17:31 ~ 23:39분

도대체 몇시간을 탄거지?

근데 승차거리는 0.0km.. 요금은 7,600원 ㅋㅋ

크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 리치타이거