RSS구독하기:SUBSCRIBE TO RSS FEED
즐겨찾기추가:ADD FAVORITE
글쓰기:POST
관리자:ADMINISTRATOR
proc : 프로시저
  • oracle
BEGIND 프로시저명(:name, :name2, :name3); END;
  • mssql
자동으로 prepare 적용 
  • mysqli (since mysql 5.0)
call proc_php_test(?, @out); 

select @out;
  • cubrid
select 1 into a from db_root;  -- output 변수 설정 

call proc_php_test(?, ?, ?, a);

select a from db_root; -- output 변수 출력

[편집] select : 조회

  • oracle
select * from 테이블;
  • mssql
select * from 테이블;
  • mysql
select * from 테이블;
set @age := 10;

select @name1 := name1, @name2 := name2 from 테이블 where age = @age;
  • mysqli
select * from 테이블;
  • postgres
select * from 테이블; 
  • cubrid
select * from 테이블;

[편집] insert : 입력

insert 구문을 DB에 따라 다르게 생성한다.

  • oracle
insert into 테이블 values (:name1, :name2, :name3);
  • mssql (자체 구현) - sp_executesql 을 사용하여 구현
insert into 테이블 values (@name1, @name2, @name3);
declare @sql nvarchar(1000)
declare @param nvarchar(1000)

set @sql = N'insert into 테이블 values (@name1, @name2, @name3) '
set @param = N'@name1 varchar(30), @name2 varchar(30), @name3 varchar(30)'

exec sp_executesql @sql, @param, @name1 = '안녕', @name2 = '하세요', @name3 = '호박'
declare @name1 varchar(30) 
declare @name2 varchar(30)
declare @name3 varchar(30)

set @name1 = '안녕'
set @name2 = '하세요'
set @name3 = '호박'

insert into 테이블 values (@name1, @name2, @name3);
  • mysql (자체 구현)
set @name1 := '안녕';
set @name2 := '하세요';
set @name3 := '호박';

insert into 테이블 values (@name1, @name2, @name3);
  • mysqli (mysql은 지원하지 않음)
insert into 테이블 values (?, ?, ?);
  • postgres
insert into 테이블 values ($1, $2);
  • cubrid
insert into 테이블 values (?, ?);

[편집] delete

  • oracle
delete from 테이블 where name = :value or name = :value2;
  • mssql (자체 구현) - sp_executesql 을 사용해서 구현
delete from 테이블 where name = @name1 or name = @name2;
declare @sql nvarchar(1000)
declare @param nvarchar(1000)

set @sql = N'delete from 테이블 where name = @name1 or name = @name2; '
set @param = N'@name1 varchar(30), @name2 varchar(30)'

exec sp_executesql @sql, @param, @name1 = '안녕', @name2 = '하세요'
  • mysql (자체 구현)
set @name1 := '안녕';
set @name2 := '하세요';

delete from 테이블 where name = @name1 or name = @name2;
  • mysqli (mysql은 지원하지 않음)
delete from 테이블 where name = ? or name = ?;
  • postgres
delete from 테이블 where name = $1 or name = $2;
  • cubrid
delete from 테이블 where name = ? or name = ?;

[편집] update

  • oracle
update 테이블 set name = :value where name2 = :value2 or name2 = :value3;
  • mssql (자체 구현) - sp_executesql 을 사용하여 구현
update 테이블 set name = @name1 where name2 = @name2 or name2 = @name3;
declare @sql nvarchar(1000)
declare @param nvarchar(1000)

set @sql = N'update 테이블 set name = @name1 where name2 = @name2 or name2 = @name3;'
set @param = N'@name1 varchar(30), @name2 varchar(30), @name3 varchar(30)'

exec sp_executesql @sql, @param, @name1 = '안녕', @name2 = '하세요', @name3 = '메롱'


  • mysql (자체 구현)
set @name1 := '안녕';
set @name2 := '하세요';
set @name3 := '메롱';

update 테이블 set name = @name1 where name2 = @name2 or name2 = @name3;
  • mysqli (mysql 지원하지 않음)
update 테이블 set name = ? where name2 = ? or name2 = ?;
  • postgres
update 테이블 set name = $1 where name2 = $2 or name2 = $3;
  • cubrid
update 테이블 set name = ? where name2 = ? or name2 = ?;
2010/02/22 23:49 2010/02/22 23:49
이 글에는 트랙백을 보낼 수 없습니다
웅쓰:웅자의 상상플러스
웅자의 상상플러스
전체 (379)
게임 (5)
영화 (2)
기타 (23)
맛집 (5)
영어 (2)
대수학 (3)
형태소 (5)
Hacking (9)
Linux (112)
HTML (48)
Application_developing (48)
Web_developing (102)
Window (11)
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
  1. 2016/01 (1)
  2. 2015/12 (3)
  3. 2015/10 (3)
  4. 2015/03 (2)
  5. 2015/01 (4)