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 6221 게시물 읽기
No. 6221
pgAdmin III 1.2.1 에서 GUI도구로 테이블 생성시...약간의 문제점이 있어..
작성자
이현순(foolbabo)
작성일
2005-07-18 19:54
조회수
6,771

다름이 아니라

pgAdmin III 를 이용하여

GUI도구상에서 리무트 서버의 테이블을 생성해보았습니다

 

필드등은 bigo 필드를 제외하곤 같은 모양으로

 

create table nmsdata

(

seq numeric,

data text,

datetime timestamp,

bigo1 varchar(50)

)

without oids;

alter table nmsdata owner to postgres;

grant all on table nmsdata to postges;

grand all on table nmsdata to bpublic;

 

이와 같은 테이블을 생성하였습니다 (물론 GUI도구로 설정후 테이블이 이모양입니다)

 

여기서 약간의 문제가 발생하는것이

select * from nmsdata 를 하였을경우

또는 where절에 다른 구문, 또는 order by 절에 다른 구문을 섞었을 경우

선택적으로 특정필드가 테이블에 존재하지 않는 다는 에러를 띄우더군요

 

여러번 해보며(한 이틀 생성 삭제를 무수히;;;) 테스트 한 결과

특정시간대에 생성한 테이블은 아무런 문제 없이 동작함을 확인하였습니다

또 특정시간대에 생성된 테이블은 아무런 문제 없이 동작하였구요

 

그리고 몇일후인 오늘 테이블을 생성해보니 또다시 그문제에 봉착하더군요..

솔직히 화도 나고 해서 더러우면 실제 쿼리를 만들라는 제게 데이터베이스(물론 MSSQL)를 가르쳐주신 분의 말씀대로..

 

실제로 쿼리를 만들어 pgAdmin III Query를 통하여 쿼리로 써서 실행 시켜보니 이러한 문제가 전혀 발생하지 않는군요..

 

흠..

pgAdmin III의 버그인지 좀 이상하여 이러한 경험을 하신 분이 계신지 여쭙습니다

 

사용중인 pgsql 버전은 8.0.2 win32 binary 이며

pgAdmin III 의 버전은 1.2.1 입니다.

 

원격으로 다른 PC에서 사용할수 있도록 수정해놓은거 외엔 추가적인 conf파일의 수정은 없었습니다

 

답변기다리겠습니다

즐거운 월요일부터 이놈이 절 괴롭히네용~~
그래도 mysql보단 나으리라 믿어 의심치 않으며 사용하고 있습니다 ^^

화이팅!

 

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

직접 쿼리를 실행시킬 경우에 아무 문제도 없었다면 pgsql의 문제는 아닌 것 같네요.

시간별로 문제가 되기도 하고 안되기도 한다는 것은 이상한 일이기도 하고 처음 듣는 현상이군요.

그런데 pgAdmin III Query로 실행 시켜본 쿼리가 table을 만드는 쿼리인가요? 아니면 필드가 없다고 오류가 나는 table에 대한 select 질의인가요?

아무리 생각해서 뭔가 사용상의 문제가 있거나 pgAdmin의 버그이거나 한 것 같습니다. 정상적인 설정의 문제는 아닌듯 하네요.

급하신 것 같은데 리플이 안달려서 그냥 써봤습니다.

박성철(gyumee)님이 2005-07-19 09:52에 작성한 댓글입니다.

1. pgAdmin III의 GUI도구로 new Table을 이용하여 테이블을 생성

2. select * from tablename 실행   -> 됨

 

3. select * from tablename where col1 = 'XX' -> 필드가 존재하지 않는다는 에러

4. select * from tablename order by seq -> 필드가 존재하지 않는다는 에러

5. update tablename set col1='xx' where seq = 1 -> seq라는 필드가 존재하지 않는다는 에러

 

6. delete from tablename -> 실행됨

7. delete from tablename where seq = 2 -> where절 이하의 컬럼이 존재하지 않는다는 에러

 

7. (번외) insert into [col1, ..] values [val1, ..] 이러한 구문은 helper에는 된다고 되어있는데 되지 않는군요 .. ^^: 이거야;; 안되는 dbms들이 꽤 되니깐 그냥 +_+ 꽁수로 ~

 

위와 같이 pgAdmin III의 GUI도구로 테이블을 생성했을때

1-7의 쿼리를 질의했을때의 성공, 에러 들입니다.

물론 될때도 있지만 되지 않을때도 있구요

한번 where절이 들어간 select문이나 update문, delete문이 동작한 테이블은 두번다시 그런일이 없어, 될때까지 새로 만들어 보고 하곤 했는데요..

알고보니 직접 쿼리로 테이블을 만들었을때는 이러한 현상이 나오지 않더라는 겁니다..

그래서 현재는 쿼리로 직접 테이블을 만들고 있습니다.

 

어떤 현상인지 충분한 설명이되었길바랍니다 ^^;

이현순(foolbabo)님이 2005-07-19 22:27에 작성한 댓글입니다.

음 결국 pgadmin으로 만든 table에서만 그런 에러가 난다는거죠?

pgadmin으로 table을 만든 다음 psql로 접속해서 \d table_name 명령으로 어떻게 만들어졌는지 봤으면 좋겠네요.

그리고 혹시 컬럼명에 대소문자를 쓰시지는 않았나요?

박성철(gyumee)님이 2005-07-20 14:16에 작성한 댓글입니다.

넵. 결국 pgAdmin III 의 GUI도구로 생성한 테이블에서만 그런 에러를 뱉어낸다는 겁니다.

(pgAdmin III의 쿼리 실행기로 쿼리로 생성한 테이블은 괜찮구요.. 같은 스키마를 사용하는데도...)

 

또한 대소문자의 경우 win32바이너리인 경우라 '구분하지 않는다.'라고 하여 테이블명, 데이터베이스명, 컬럼명 등 다 대문자를 사용하였습니다만, 초반에 겪은 삽질의 여파로 죄다 소문자로 결정했습니다. 몇몇 테이블(이전에 GUI도구로 만들어 성공한 테이블)을 제외하곤 테이블명, 필드명 전체 소문자로 해놓았습니다.

 

\d tablename이 어떠한 명령어인지 알고 싶네요 ^^

제가 뭘 잘못 보고 있는건지도 모르니

디버깅, 트러블슈팅법이있으시면 전수해주십시오 ㅠ_ㅠ

 

현재 서버는 같은 서버에 다른 PC에서 pgAdmin III를 가지고 테이블 생성, 로컬 데이터베이스 테이블 생성등을하는데..

흠..같은 버전의 바이너리를 가지고 하는데도 로컬 데이터베이스의 트리구조에 몇개가 빠져보이기도 하고 그러네요...

좀 많은 클라이언트를 확보하여 더 많은 버그성의 상황을 정리해보도록 하겠습니다 ^^:

 

흠...현재 만들고 있는 프로젝트의 NMS기능은 시원시원하게~ 동작하네요 ^^;;

음음...^^ 아... pgsql 짱입니다 +_+ ㅎㅎ

이현순(foolbabo)님이 2005-07-21 18:42에 작성한 댓글입니다.

\d table_name은 PGAdminIII이 아니고 원래 pgsql에 따라오는 psql이라는 프로그램을 사용할 때에 table의 구성을 확인해 볼 수 있는 명령어입니다.

psql으로 db에 접속하신 후에 저 명령을 날려보세요.

저는 사실 PGAdmin은 거의 쓰지 않습니다. linux에서도 잘 돌아가기는 하지만 역시 GUI 툴은 믿음이 안가서 서브로만 가끔 씁니다.

pgsql이 전혀 버그가 없는 것은 아니지만 (Oracle이나 MSSQL도 어느정도 버그는 늘 가지고 있습니다.) PGAdmin III는 상대적으로 더 많은 버그가 있을 것 같네요. psql의 간단한 사용법은 익혀두시는 것이 앞으로도 좋을 것 같네요.

박성철(gyumee)님이 2005-07-21 19:15에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
6225프로시져 실행하기 [1]
해워리
2005-07-22
3478
6224view 생성시 컬럼에 sum()이 들어가면.. 성능적으로 어떤가요? [1]
박기원
2005-07-22
2105
6223백업 및 vaccumdb실행 시 에러... [8]
진서민
2005-07-20
3371
6221pgAdmin III 1.2.1 에서 GUI도구로 테이블 생성시...약간의 문제점이 있어.. [5]
이현순
2005-07-18
6771
6219PSQL실행중에 재fork는 와이 하는지? [2]
서진석
2005-07-16
2316
6216데이터베이스 복구를 하는데 에러 메시지가 나옵니다. [2]
쭌~~
2005-07-13
2638
6215[급한 질문] bigint 형에 대해서 [2]
가시고기
2005-07-12
2235
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다