Question

Quand je lance ce script pour rechercher du texte particulier sys.columns et je reçois beaucoup de "dbo.syncobj_0x3934443438443332" comme des lignes.

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%'

Si je bien, ce sont des objets de réplication. Est-ce donc? Puis-je les jeter loin de ma requête comme o.name NOT LIKE '%syncobj%' ou il y a une autre façon?

Merci.

Était-ce utile?

La solution

Je l'ai trouvé une solution. Ne sait pas, si c'est le meilleur ou pas.

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'

Le résultat est bien maintenant. Comme je l'ai dit ce sont des objets de syncobj de réplication et ils n'ont pas de signification pour nous. Ils sont utilisés à des fins de réplication uniquement.

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

EDIT:

Vous avez oublié d'ajouter, de la syncobj sont stockés dans DB Views, donc si vous avez besoin liste des vues, vous aurez probablement besoin de les ignorer comme je l'ai fait dans ma question.

Lors de la vérification de différence entre syncobj et mon point de vue, la seule différence est is_ms_shipped colonne. Pour syncobj il est 1, pour d'autres 0. Cela signifie que les vues de syncobj sont créés par le système.

P.S. Je vais attendre pendant un certain temps et si personne ne donne une autre réponse, je l'accepte la mienne.

Autres conseils

Lorsque vous créez une réplication qui ne comprend pas tous les champs ou d'autres modifications de données méta de la table d'origine. Si vous effectuez une génération d'un script à partir d'une publication, il va vous montrer comment il est créé (voir ci-dessous). La vue de fournir un objet pour générer les extraits de la PCA pendant les clichés initiaux.

Voici un exemple

  

- Ajout de l'objet de synchronisation article exec sp_articleview @publication = N'publication_data '@article = N'tablename',   @view_name = N'syncobj_0x4239373642443436' , @filter_clause = N '',   @force_invalidate_snapshot = 1, @force_reinit_subscription = 1 GO

P.S. J'ai eu récemment un problème lorsque la réplication je laissai tomber, il n'a pas de laisser tomber ces puis vous devez déposer manuellement les vues du système pour réutiliser un script de réplication. Donner un message d'erreur

  

Msg 2714, Niveau 16, État 3: Il existe déjà un objet nommé   'Syncobj_0x3437324238353830' dans la base de données.

Ce qui a provoqué l'échec de bcp au cours de l'instantané.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top