반응형
Oracle CLOB가 4000자를 초과하여 삽입할 수 없습니까?
CLOB 유형 열에 4000자 이상을 삽입하려면 어떻게 해야 합니까?
--create test table s
create table s
(
a clob
);
insert into s values('>4000 char')
오류가 발생합니다.
ORA-01704: 문자열이 너무 깁니다.
4,000자 이상의 문자열을 한 번 삽입하고 싶습니다.제가 그걸 어떻게 합니까?가능합니까?
오라클 레퍼런스를 읽었을 때CLOB
최대 4GB(기가바이트)를 절약할 수 있습니까?
- 긴 문자열을 4000자 이하의 청크로 분할
- to_clob() 함수를 사용하여 각 청크에 대한 clobs 생성
- 근육을 연결합니다.
다음은 예입니다.
insert into <table> (clob_column)
values
(
to_clob(' <=4000 symbols ')
||to_clob(' <=4000 symbols ')
||to_clob(' <=4000 symbols ')
...
||to_clob(' <=4000 symbols ')
);
한 번 삽입할 수 있는 최대 문자 수는 4000자(Oracle의 최대 문자열 리터럴)입니다.그러나 lob 기능을 사용할 수 있습니다.dbms_lob.append()
최대 4000자의 청크를 클로브에 추가하려면:
CREATE TABLE don (x clob);
DECLARE
l_clob clob;
BEGIN
FOR i IN 1..10
LOOP
INSERT INTO don (x) VALUES (empty_clob()) --Insert an "empty clob" (not insert null)
RETURNING x INTO l_clob;
-- Now we can append content to clob (create a 400,000 bytes clob)
FOR i IN 1..100
LOOP
dbms_lob.append(l_clob, rpad ('*',4000,'*'));
--dbms_lob.append(l_clob, 'string chunk to be inserted (maximum 4000 characters at a time)');
END LOOP;
END LOOP;
END;
사용clob
열 및 사용sqlldr
CSV에서 데이터를 가져옵니다.
sqldeveloper
필요한 것을 생성할 수 있습니다.control
.ctl
대본을 작성합니다.
언급URL : https://stackoverflow.com/questions/18394691/oracle-clob-cant-insert-beyond-4000-characters
반응형
'programing' 카테고리의 다른 글
*nix 서버에서 ASP.NET Core용 프로덕션에서 사용 중인 웹 서버는 무엇입니까? (0) | 2023.07.06 |
---|---|
Vuex 상태에서 kazon/vue-i18n 사용 (0) | 2023.07.06 |
2D 배열을 매개 변수로 전달할 때 열 크기를 지정해야 하는 이유는 무엇입니까? (0) | 2023.07.06 |
REST API를 통해 워드프레스 메뉴 항목에 액세스하는 방법은 무엇입니까? (0) | 2023.07.06 |
는 "HttpRequest"에 대한 상수입니다.RequestType" 및 "WebRequest"를 선택합니다..NET의 Method" 값? (0) | 2023.07.06 |