Ich habe Fortschritte gemacht, indem ich die SSMS-Projektdatei manuell bearbeitet habe, um Ordner unter der Lösung hinzuzufügen. Öffnen Sie die Datei .ssmssqlproj in einem Texteditor. Suchen Sie nach den Knoten mit dem Namen LogicalFolder. Der Knoten Verschiedenes ist ein gutes Modell für das, was Sie tun müssen.
Kopieren Sie einfach diese Zeilen und ändern Sie den Namen in den Ordner, den Sie sehen möchten. Ändern Sie auch den Wert für Typ in einen eindeutigen Wert. Hier ist was ich getan habe.
<LogicalFolder Name="Tables" Type="4" Sorted="true">
<Items />
</LogicalFolder>
<LogicalFolder Name="Functions" Type="6" Sorted="true">
<Items />
</LogicalFolder>
<LogicalFolder Name="User-defined Table Types" Type="7" Sorted="true">
<Items />
</LogicalFolder>
Stellen Sie sicher, dass Sie eine Kopie der Projektdatei (.ssmssqlproj) aufbewahren. Wenn Sie die Bearbeitung durcheinander bringen, wie ich es einige Male getan habe, wird das Projekt nicht geöffnet. Dies ist nicht so schlimm, wenn Sie das TFS-Add-In installiert haben und Ihre Projektdateien einchecken. Sie können die Änderungen einfach verwerfen. Wenn nicht, stellen Sie sicher, dass Sie eine Kopie erstellen.
Dann erstelle ich Ordner unter der Lösung, die den logischen Ordnernamen entsprechen. Danach erstellte ich ein Tabellendefinitionsskript und ein benutzerdefiniertes Tabellentypdefinitionsskript und speicherte sie in ihren jeweiligen Ordnern. Sie wurden im Projektmappen-Explorer im Ordner "Verschiedenes" angezeigt, und ich habe sie in die entsprechenden Ordner gezogen.
Dies ist, wo die Dinge zusammengebrochen. Ich glaube, alle gespeicherten Prozeduren, Funktionen, Tabellen und Typen befinden sich in Dateien mit der Erweiterung .sql. Da es sich um SQL-Dateien handelt, wurden sie im Projektmappen-Explorer im Ordner Abfragen abgelegt. Sie befinden sich jedoch weiterhin physisch in den richtigen Ordnern auf der Festplatte. Das ist also ein Schritt in die richtige Richtung.
Ich möchte sehen, ob das Attribut "Typ" in der Projektdatei einer bestimmten Dateierweiterung entspricht und ob ich herausfinden kann, um welche es sich handelt. Wenn ich die richtigen Erweiterungen bekomme, legt SSMS die Dateien im richtigen Projektordner ab.
Ich kann mir Visual Studio ansehen, um zu sehen, wie dies funktioniert, da SSMS gemäß dem Begrüßungsbildschirm auf Visual Studio basiert.
Ich bin jedoch auf halbem Weg da, vielleicht kann einer von euch den Rest herausfinden!
.sql
Datei aufbewahrt. Auf diese Weise müssen Sie immer nur eine Datei im Auge behalten.