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
운영게시판
최근게시물
PostgreSQL Q&A 8970 게시물 읽기
No. 8970
7K 길이의 텍스트 입력하는 방법?
작성자
김동수(kunbawe)
작성일
2012-03-11 16:55ⓒ
2012-03-11 16:56ⓜ
조회수
9,144

아주 초보적인 질문일 수 있는데 고수님 조언 부탁드립니다.

개발 환경

Ubuntu Server 11.10 x64

PostgresSQL 9.1.2

 

CREATE TABLE test

(

  fdesc text,

  fseq integer,

 f len varchar(8096)

}

위와 같이 테이블을 만들어서  flen 필드에 7K 텍스트를 다음과 같이 넣는데 입력이 되지 않습니다.

insert into test(flen) values('111111111111111111111111....1111');

7K의 1이 들어 있는 텍스트를 넣으면 쿼리는 성공하는데 데이터에는 아무것도 들어가지 않습니다.

이상한 것은 4K 미만으로 넣으면 테이블에 들어갑니다.

텍스트 길이랑 관계가 있나요?

관계가 있다면 넣을 수 있는 방법은 있나요?

디비 개발 처음이라 애먹고 있습니다. 

 현재 libpg 라이브러리를 가지고 C로 개발하고 있습니다.

조언 부탁드립니다.

 

 

 

 

 

 

 

 

이 글에 대한 댓글이 총 2건 있습니다.

 varchar(N) 자료형은 byte 값이 아니라, 글자수입니다. 

libpq에서 해당 자료를 넣기 전에 

select length('1111111'::varchar);

이런 쿼리를 먼저 실행해서, 입력 문자열의 길이가 정말 원하는 길이인지를 살펴보세요. 

개인적인 생각으로는 libpq에서  문자열 처리에 문제가 있었던게 아닐까싶습니다. 

한글인 경우고, 데이터베이스는 utf8 charset 이면, libpq의 문자열을 거의 3배 정도의 공간을 확보해야

원하는 자료가 들어갈 것 같네요.

 

김상기(ioseph)님이 2012-03-12 10:03에 작성한 댓글입니다.

 답변 감사합니다.

다시 한번 검토해 보도록 하겠습니다.

 

김동수(kunbawe)님이 2012-03-13 08:39에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
8974클러스터 인덱스 [1]
김민수
2012-04-13
9627
8973디비생성시 encoding 문제로 문의글 남깁니다. [1]
신현종
2012-04-03
10038
89729.0이상 위도우용 바이너리는 어떻게 설치하지요? [2]
심상호
2012-04-01
10499
89707K 길이의 텍스트 입력하는 방법? [2]
김동수
2012-03-11
9144
8968trigger 질문 [1]
서귀동
2012-02-29
8817
89679.0부터 생긴 테이블, 칼럼 단위 collate 사용자 정의 장점 [2]
김상기
2012-02-29
11483
8965libpqxx는 PostgreSQL DB가 설치된곳에서만 쓸 수 있나요? [5]
송미란
2012-02-28
10120
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다