microsoft / microsoft/sqlmanagementobjects

SMO 172.52.0, skips generation of "hidden" tables.

Ouverte
#190 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
C#
Étoiles
143
Forks
28
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

If you create a table with this:

CREATE TABLE [dbo].[sysblah](
	[name] [sysname] NOT NULL,
	[principal_id] [int] NOT NULL,
	[diagram_id] [int] IDENTITY(1,1) NOT NULL,
	[version] [int] NULL,
	[definition] [varbinary](max) NULL
) 

And then create the extended-property to "hide" it, by making it look like a system-table:

EXEC sys.sp_addextendedproperty @name=N'microsoft_database_tools_support', @value=1 , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'sysblah'

If you then use MSDE (or SMO via API), if you script the entire database (i.e. all objects) . . .

Then . . . you'll notice that the resultant script doesn't contain [dbo].[sysblah].

This seems like a bug. The intent is just to hide the table, not treat it as as "system table".

Weirdly, I've just SMO via C#, and even though you include the table in SelectedObjects, it (i) will NOT create the table but (ii) attempts to create the extended-property, which immediately fails because the table does not exist.

Thanks!

Sean

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par reproduire le problème avec les instructions CREATE TABLE et de propriété étendue indiquées, puis générez le script de l’ensemble de la base de données et de la table via l’SMO API, avec la table sélectionnée. Suivez le chemin de scripting utilisé pour la gestion des tables masquées ou système et vérifiez que la table est générée avant sa propriété étendue ; le travail est terminé lorsque les deux scripts créent correctement [dbo].[sysblah].

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
csharp, sql
Domaine
databases
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.