IT_DBMS/MSSQL

프로시저 연습하기 2

JJun ™ 2006. 3. 8. 12:19




/*파라메터를 이용한 수정*/

 

create proc p_test02
  @아이디 int,
  @이름 varchar(10),
  @번호 varchar(15)
as
  update 전화번호 set
name = @이름, phone = @번호
  where id = @아이디
go

/*update 프로시저 생성*/

 

exec p_test02 3,'이정','011-7897-6789'
/*프로시저를 실행 옆에 있는 매개변수는 수정되는 조건의 값(id)과 값쳐지는 값(이름,번호) */

 

select * from 전화번호
/*전화번호 테이블 확인*/

 

=======================================================================================

 

/*파라메터를 이용한 삭제*/

 

create proc p_test03
  @아이디 int
 as
  delete from 전화번호
  where ID=@아이디
go
/*delete 프로시저 생성*/

 

exec p_test03 2
/*아이디 값(id)이 2인 데이터 삭제*/

 

select * from 전화번호
/*전화번호 테이블 확인*/


 

=======================================================================================

 

/*매개변수 개념에 대한 중요 예제*/


create proc p_test07
 @name varchar(10)
as
 select * from 전화번호
 where name like
'%'+@name+'%'
go

 

create proc p_test08
 @name char(10)
as
 select * from 전화번호
 where name like
'%'+@name+'%'
go

 

exec p_test07 '현'

exec p_test08 '현'

 

/*
char형은 10byte로 고정되어 있기 때문에 그 앞뒤의 %가 먹히지 않는다.

char형을 고수하려면 char(10) → char(2)로 바꿔줘도 된다.
varchar로 매개변수형을 바꿔주면 남는 공간은 줄어들기 때문에 %가 먹힌다.
*/

 

=======================================================================================

 

 

create proc p_test09
 @아이디 varchar(10),
 @패스워드 varchar(12)
as
 select *
 from 회원
 where 회원id = @아이디 and 비밀번호 = @패스워드
go

/*아이디,패스워드에 맞는 데이터 출력*/

 

exec p_test09 '111','111'
exec p_test09 '222','222'
exec p_test09 '333','333'
/*매개변수 넣고 실행*/


'IT_DBMS > MSSQL' 카테고리의 다른 글

함수 작성 구문  (0) 2006.03.09
프로시저 연습하기 3  (0) 2006.03.08
프로시저 연습하기 1  (0) 2006.03.08
파티션드 뷰 연습  (0) 2006.03.07
분산 파티션 뷰(Distributed Partitioned Views) 사용 하기 | MS-SQL  (0) 2006.03.07