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
운영게시판
최근게시물
Sybase Q&A 1301 게시물 읽기
No. 1301
쿼리문 질문입니다
작성자
왕초보
작성일
2005-09-27 09:45ⓒ
2005-09-27 09:46ⓜ
조회수
4,230

 

특정값이 들어있는, 테이블명과 필드명을 알수 있는
쿼리를 작성해야 합니다.
도움을 주시면 정말 감사하겠습니다.
수고하세요

 

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

특정 값이라 함은... 모든 테이블의 모든 레코드를 검색해야 할 것 같네요.

 

거의 해킹 수준입니다.

 

Sysobjects 테이블과 syscolumns 테이블의 Catalog 정보를 이용해서

모든 사용자 테이블과 char 속성의 컬럼에 대하여

SELECT SQL 문을 생성하시고,

하나씩 실행하는 방법 외에 특별한 방법이 없을 것 같습니다.

 

인내심을 가지고 해보세요.

존넘님이 2005-09-27 11:24에 작성한 댓글입니다. Edit

 

데이타가 아니라 칼럼, 테이블명이라면 설치된프로그램의 경로에 스크립트가 있습니다. 저도 이거 수정해서 쓰는데.. ASIQ라면..칼럼 조회는

 select cast(current database as varchar(32)),  
      cast(u.user_name as varchar(32)),  
      cast(table_name as varchar(32)),  
      cast(column_name as varchar(32)),  
      cast(d.type_id as smallint),  
      cast(ifnull(c.user_type, sst.ss_type_name,
       
                       (select type_name from SYS.SYSUSERTYPE
                        where  type_id=c.user_type)) as  varchar(32)),
      cast(isnull(d."precision",width) as integer),
      cast(width as integer ),
      cast(scale as smallint),
       
      cast((if d.domain_id NOT IN ( 6,7,9,8,10,11,12,13,14 ) then
                       10
                  else
                       null
                  endif) as smallint),
      cast((if nulls='Y' then 1 else 0 endif) as smallint),
      cast(null as varchar(254)),
      cast(sst.ss_domain_id as smallint),
      cast(column_id as  smallint     ) 
 from SYS.SYSCOLUMN as c,
             SYS.SYSTABLE as t, 
             SYS.SYSDOMAIN as d,
             SYS.SYSTYPEMAP as map,
             SYS.SYSSQLSERVERTYPE as sst,
      SYS.SYSUSERPERMS as u
 where
               c.table_id=t.table_id
    and t.table_name like @table_name 
    and t.creator=u.user_id
    and u.user_name like @table_owner
    and c.domain_id=d.domain_id
    and map.sa_domain_id=c.domain_id
    and(map.sa_user_type=c.user_type or
              (select count(*) from SYS.SYSTYPEMAP where sa_user_type=c.user_type)=0 AND (map.sa_user_type is null))
             
    and sst.ss_user_type=map.ss_user_type
    and (nullable is null or nullable='N')
    and c.column_name like @column_name

테이블 조회는

select cast(current database as varchar(30)),
      cast(creator as varchar(30)),
      cast(tname as varchar(30)),
      cast((if tabletype='VIEW' then
                       'VIEW'
            else
                 if creator='SYS' and tabletype='TABLE' then
                             'SYSTEM TABLE'
                        else
                             'TABLE'
                        endif
             endif) as varchar(30)),
      cast(null as varchar(254))
      from SYS.SYSCATALOG
      where (creator like @table_owner)
 and (tname like @table_name)
 and(   @table_type='%'
     or(locate(@table_type,'''TABLE''')<>0
     and tabletype<>'VIEW' and creator<>'SYS')
 or(locate(@table_type,'''VIEW''')<>0
    and tabletype='VIEW')
 or(locate(@table_type,'''SYSTEM TABLE''')<>0
    and tabletype<>'VIEW' and creator='SYS'))
 and(current database like @table_qualifier)

이렇게 되어 있네요.. 여기있는 테이블 참조하심..

그리구 질문하실때는 제품과 버젼도 함께..

놀놀이님이 2005-09-27 12:49에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1305ASIQ 에서 dbspace 의 segment 사용량 확인 방법은?? [2]
2005-09-28
5168
1304BCP Error [1]
초보자
2005-09-28
3118
1303sybase-12.5 linux버전 받아서 설치하는 방법좀 알려주세요 [2]
싸이설치
2005-09-27
3281
1301쿼리문 질문입니다 [2]
왕초보
2005-09-27
4230
1300아래 글 자세히 다시 질문드릴께요.. [1]
김기택
2005-09-27
2791
1299테입 백업시 질문 [1]
김기택
2005-09-24
2691
1298mssql에서 사용하는 쿼리 sybase로 변환 [2]
초보개발자
2005-09-24
3012
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다