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 1938 게시물 읽기
No. 1938
systabstats 알려주세요
작성자
Jack
작성일
2007-06-04 20:35ⓒ
2007-06-04 20:37ⓜ
조회수
6,186

테이블 건수를 체크하는 방법으로 아래의 sql를 사용하고 있습니다.
그런데 가끔
select count(*) from table명 해보면 건수가 존재하는데
아래에 B.rowcnt에는 0으로 보입니다.

혹시 아시는 분 후사합니다.
(아니면 더 좋은 방법이라도, 혹시 sp_spaceused에서 참조하는 테이블을 알 수 없을까요)
sp_spaceused는 쓸수가 없고 Query로 해결해야 합니다.)

-------------------------------------
-------------------------------------

SELECT substring(A.name,1,50) || '#####' || convert(char,B.rowcnt)
FROM sysobjects A, systabstats B
WHERE A.id = B.id
  AND B.indid = 0

 

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

1. sybtabstats 는 하우스키퍼에 의하여 주기적으로 갱신됩니다.

   따라서 테이블의 실제 정보와 다를수 있습니다.


2. sysindexes를 이용하면 됩니다. (OAM page 를 읽는다)

select rowcnt(doampg) from sysobjects a, sysindexes b

where a.id = b.id and b.indid <= 1 


dirty read처럼 동작(?)할 듯 

insert, delete가 실행중일때 실행중인 정보를 읽습니다.



indid = 0 테이블

indid = 1 allpage lock에서 clustered index    



allpage lock에서 clustered index가 있는 경우에는 indid = 0인 것은 존재하지 않습니다.

따라서 indid = 0 이 아니라 indid <= 1 이 맞는 듯..

영빈~(backfish)님이 2007-06-04 22:17에 작성한 댓글입니다.
이 댓글은 2007-06-04 23:23에 마지막으로 수정되었습니다.

select a.name, rowcnt(b.doampg) from sysobjects a, sysindexes b
where a.id = b.id and b.indid <= 1

 이문장이 맞기는 맞습니다.

그런데 sybase 15에서는 rowcnt함수가  Deprecated 됬다구 합니다.

row_count를 쓰라고 하는데 들어가는 인자가 뭔지 지금 확인중인데 금방 안 되네요.

혹시 아시는분 올려주시면 감사하겠습니다.

Jack님이 2007-06-05 16:42에 작성한 댓글입니다. Edit

허걱 15를 쓰고 계시는 군요


저는 12.5.4를 쓰고 있습니다.


http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.help.ase_15.0.blocks/html/blocks/blocks200.htm


메뉴얼을보니까 15부터는 dbid와 objectid만 있으면 되는군요


select row_count(db_id(), a.id) from sysobjects a 로 조회하면 될 듯



영빈~(backfish)님이 2007-06-05 16:52에 작성한 댓글입니다.
이 댓글은 2007-06-05 16:53에 마지막으로 수정되었습니다.

GG

Thanks a lot

Jack님이 2007-06-05 16:55에 작성한 댓글입니다.
이 댓글은 2007-06-06 10:44에 마지막으로 수정되었습니다. Edit
[Top]
No.
제목
작성자
작성일
조회
1941[질문] null 값의 비교... [1]
김재호
2007-06-08
5974
1940쿼리로 가능한지 알고 싶습니다. [3]
왕왕초보
2007-06-08
5746
1939DB사이즈 늘려도 문제 없나요? [4]
초보
2007-06-07
6688
1938systabstats 알려주세요 [4]
Jack
2007-06-04
6186
1937alter table 추가시 위치 제어 [1]
승우
2007-06-04
5310
1936디스크 무결성 점검 작업에 대하여.. [2]
열심도령
2007-06-04
5047
1935컬럼의 값이 숫자가 아닌 값이 있는지? [1]
이은영
2007-06-01
5019
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.023초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다