2010-05-26 4 views
7

sys.columns에서 특정 텍스트를 검색하기 위해이 스크립트를 실행하면 행 수가 많아 "dbo.syncobj_0x3934443438443332"이됩니다.SQL 서버의 syncobj는 무엇입니까

SELECT c.name, s.name + '.' + o.name 
FROM sys.columns c 
INNER JOIN sys.objects o ON c.object_id=o.object_id 
INNER JOIN sys.schemas s ON o.schema_id=s.schema_id 
WHERE c.name LIKE '%text%' 

제대로 표시되면 복제 개체입니다. 그렇지? 난 그냥 o.name NOT LIKE '%syncobj%'처럼 내 쿼리에서 버리거나 다른 방법이 있을까요?

감사합니다.

답변

11

해결책을 찾았습니다. 그것이 최선인지 아닌지는 모르겠다.

SELECT c.name, s.name + '.' + o.name 
FROM sys.columns c 
    INNER JOIN sys.objects o ON c.object_id=o.object_id 
    INNER JOIN sys.schemas s ON o.schema_id=s.schema_id 
WHERE c.name LIKE '%text%' AND o.type = 'U' 

결과가 양호합니다. syncobj는 복제 객체라고 말했기 때문에 우리에게는 의미가 없습니다. 그것들은 복제 목적으로 만 사용됩니다.

http://www.developmentnow.com/g/114_2007_12_0_0_443938/syncobj-views.htm

편집 :

당신이보기의 목록이 필요합니다 그래서 만약

추가, syncobj 년대, 조회수로 DB에 저장되어 분실 , 당신은 아마 내가 에서처럼 그들을 무시해야합니다 내 문제.

syncobj와 내보기의 차이점을 확인하는 동안 is_ms_shipped 열만 있습니다. syncobj는 1, 다른 0은 syncobj 뷰가 시스템에 의해 생성됨을 의미합니다.

P. 나는 잠시 동안 기다릴 것이고, 아무도 다른 대답을주지 않으면, 나는 나의 것을 받아 들일 것이다.

+4

+1 답변 게시. 가서 받아 들여라. –

1

원래 테이블의 모든 필드 또는 기타 메타 데이터 변경 내용을 포함하지 않는 복제를 만들 때. 발행물에서 생성 스크립트를 작성하면 작성 방법을 보여줍니다 (아래 참조). 이보기는 초기 스냅 샷 중에 bcp 추출을 생성 할 객체를 제공합니다. 문서 동기화 객체 간부의 sp_articleview를 @publication = N'publication_data '@article = N'tablename' @view_name = N'syncobj_0x4239373642443436 '@filter_clause 추가 - 여기

는 예

이다

= N ', 가 @force_invalidate_snapshot = 1 = 1 [@force_reinit_subscription

PS 최근에 복제를 삭제할 때 문제가 발생했습니다. 복제를 삭제 한 다음 복제보기를 수동으로 삭제하여 복제 스크립트를 재사용해야합니다. 메시지 2714, 수준 16, 상태 3 오류 메시지가

주기 : 데이터베이스에 'syncobj_0x3437324238353830'라는 개체가 이미 있습니다.

이로 인해 스냅 샷 중에 bcp가 실패했습니다.