연구개발/DBA

MS-SQL문 강좌 8 장

HEAD1TON 2010. 8. 1. 00:31

create table dftest(

             city        char(10) not null default '서울'

)

 

insert into dftest values(default)

select * from dftest

 

create table a(

             id int,

             최종입력자 varchar(30)

                           default system_user  -- 현재 사용자가 누구인지 표시

)

 

insert into a (id) values(1)

 

select * from a

 

 

create table checkexam(

             city char(10) check(city in('서울', '대전', '강릉', '태백'))

) -- in 안에 있는 내용만 집어넣을 수 있음

 

insert into checkexam (city) values('익산') --

 

select * from checkexam

 

create table checkDae(

             city char(10) check(city like '대%') --'대'로 시작하는 단어만 입력가능

)

create table checkDaeint( -- 0에서 9까지의 숫자가 4번 쓰여야함

             city char(10) check(city like '[0-9][0-9][0-9][0-9]'))

 

insert into checkDae(city) values('대전')

insert into checkDae(city) values('대구')

insert into checkDae(city) values('대천')

 

insert into checkDaeint(city) values('12k4')

insert into checkDaeint(city) values('3245')

insert into checkDaeint(city) values('2397')

 

select * from checkDae

order by city

 

 

create table 사원(

             사번 int identity,

             부서코드              char(2) constraint fk_사번_부서 foreign key

                                        references 부서 (부서코드)

                                        on update cascade -- 참조하는 쪽에서 자료 수정이 같이 수정

                                        on delete no action) -- 참조시 삭제 불가 옵션

 

create table 부서(

             부서코드 char(2) primary key,

             부서명 char(10) null,

             비고 char(10) null)

 

insert into 부서  values('ac', '회계부', null)

 

select * from 부서

 

update 부서 set 부서코드 = 'BC' where 부서코드='AC'

 

select * into od  from "order details"

 

sp_helpconstraint "order details"

 

alter table od

             with nocheck -- 기존 데이터를 검색못하게함(1)

             add constraint fk_od_orderid

                           foreign key(orderid)

                           references orders(orderid)

 

select * from 사원2

 

truncate table od

 

insert into od

             select * from "order details"

 

alter table od

             nocheck  -- 기존의 데이터를 검색을 하지 않는다(2)

             constraint fk_od_orderid

 

insert od

             select * from "order details"

 

sp_help 사원2

 

insert into 사원2 values('고승연','800627')

 

 

print 1+3 -- 화면에 계산되어 뿌려짐, 숫자와, 문자는 같이 표시안됨(하나의 데이터만처리)

 

raiserror ('오류 발생 다 죽음', 10, 1)

raiserror ('오류 발생 다 죽음', 20, 1)

raiserror ('오류 발생 다 죽음', 30, 1) with log  -- 오류발생 log파일 작성