database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 4027 게시물 읽기
No. 4027
[잡담] PHP4, Oracle 8에서 LOB 타입 사용하기.
작성자
정재익
작성일
2001-05-06 14:31
조회수
2,426

출처 : synec@dext.net

 

PHP와 Oracle8에서 varchar2는 4000bytes까지만 된다. 그럴 경우 더 큰 타입은?

long, lob 등이 있다. 헌데 oracle8에서는 long보다 lob를 권장한다. long은 oracle7과의

호환을 위해 있는 타입이라는 설명이 있다.

 

아무튼 그 lob 중에서도 blob를 이용하면 4000byte가 넘는 내용을 입출력할 수 있다.

clob는 언어의 문제로 설정이 복잡하지만 blob는 그냥 된다. 아무튼 다음은

간단한 test용 code이다.

 

<?

# create table test (title varchar2(100), text blob);

 

echo "title: ".$title = time ();

$text =

"

한글도 입력하여 테스트합니다. synec!

ASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57kASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57ktyg'45y09i8ui24-tgi;340re8oiguos.2058ryuikjh23rw#YHRF%WU^TRHGF$%YERFDB^*I&U%^%ERASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57ktyg'45y09i8ui24-tgi;340re8oiguos.2058ryuikjh23rw#YHRF%WU^TRHGF$%YERFDB^*I&U%^%ERASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57ktyg'45y09i8ui24-tgi;340re8oiguos.2058ryuikjh23rw#YHRF%WU^TRHGF$%YERFDB^*I&U%^%ER

80.!@#$%^&*()_+|1234567890-=\[];'./,{}:"<>?ASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57kASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57ktyg'45y09i8ui24-tgi;340re8oiguos.2058ryuikjh23rw#YHRF%WU^TRHGF$%YERFDB^*I&U%^%ERASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57ktyg'45y09i8ui24-tgi;340re8oiguos.2058ryuikjh23rw#YHRF%WU^TRHGF$%YERFDB^*I&U%^%ERASDLJKAK14323tgfdh554tgFYdjh36tfw6t54rth5edyj57ktyg'45y09i8ui24-tgi;340re8oiguos.2058ryuikjh23rw#YHRF%WU^TRHGF$%YERFDB^*I&U%^%ER

";

 

echo "<hr>login: ".$conn = OCILogon (USER, PASSWORD, SID);

 

# INSERT

echo "<hr>sql: ".$sql = "INSERT INTO test VALUES ('$title', EMPTY_BLOB()) RETURNING text INTO :text";

echo "<hr>parse: ".$stmt = OCIParse ($conn, $sql);

 

echo "<hr>new_desc: ".$clob = OCINewDescriptor ($conn, OCI_D_LOB);

echo "<hr>bind: ".OCIBindByName ($stmt, ":text", &$clob, -1, OCI_B_BLOB);

 

echo "<hr>exec: ".OCIExecute ($stmt, OCI_DEFAULT);

 

echo "<hr>save: ".$clob->save($text);

echo "<hr>free: ".$clob->free();

echo "<hr>commit: ".OCICommit ($conn);

echo "<hr>free_state: ".OCIFreeStatement($stmt);

 

# SELECT

echo "<hr>sql: ".$sql = "SELECT title, text FROM test";

echo "<hr>parse: ".$stmt = OCIParse ($conn, $sql);

 

echo "<hr>exec: ".OCIExecute ($stmt, OCI_DEFAULT);

echo "<hr>row: ".$row = OCIFetchStatement ($stmt, $result);

echo "<hr>free_state: ".OCIFreeStatement($stmt);

 

echo "<hr>logout: ".OCILogOff($conn);

 

# PRINT

echo "<p><hr>result_title: ".$result[TITLE][$row-1];

echo "<br>text size: ".strlen ($result[TEXT][$row-1]);

echo "<br>result_text: ".$result[TEXT][$row-1];

?>

[Top]
No.
제목
작성자
작성일
조회
4031[잡담] 오라클 깔기
firebird
2001-05-07
1648
4037┕>맞어요 텍스트가 더 좋아요. GUI 나쁘~
문태준
2001-05-07 09:40:26
1713
4030[질문] 오라클의 언인스톨
유경문
2001-05-06
1285
4032┕>Re: [질문] 오라클의 언인스톨
firebird
2001-05-07 05:39:42
2070
4042 ┕>Re: Re: [질문] 오라클의 언인스톨
herrchen
2001-05-07 10:48:37
1557
4028갑자기 12546 에러가.....
오라초보
2001-05-06
1721
4027[잡담] PHP4, Oracle 8에서 LOB 타입 사용하기.
정재익
2001-05-06
2426
4035┕>Re: [잡담] PHP4, Oracle 8에서 LOB 타입 사용하기. -&gt; CLOB도 잘됨
문태준
2001-05-07 10:08:54
6871
4267 ┕>text파일을 clob데이터형으로 DB에 저장하는 법 [2]
허충구
2001-05-14 17:23:22
6589
4024remote에있는table를local에trigger거는것은...
윤동만
2001-05-06
1203
4026┕>Re: remote에있는table를local에trigger거는것은...
firebird
2001-05-06 05:18:35
1588
4029 ┕>Re: Re: remote에있는table를local에trigger거는것은...
윤동만
2001-05-06 19:15:12
1503
4021같은 문제의 세번째 질문입니다.
이종범
2001-05-05
1223
4022┕>Re: 같은 문제의 세번째 질문입니다.
firebird
2001-05-06 01:58:53
1828
4041┕>Re: 같은 문제의 세번째 질문입니다.
herrchen
2001-05-07 10:34:00
1595
4015아래 질문 추가
이종범
2001-05-05
40866
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다