Feedback

C# - T-SQL-Stored-Proc Generieren

Veröffentlicht von am 28.04.2009
(2 Bewertungen)
Oftmals möchte man für eine Datenbank T-SQL Skripte generieren. Visual Studio hat dazu einen guten Mechanisums: Der eingebaute unterstützung für die CodeGenerierungssprache T4 (.tt Dateien).

Das Snippet für T4 generiert SQL Statements aus einer Datenbank.

Zusätzlich kann es hilfreuch sein einen Visuellen Editor wie <a target="_blank" href="http://t4-editor.tangible-engineering.com">t4-editor.tangible-engineering.com</a> zu verwenden.

t4-editor.tangible-engineering.com
GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) für Projektmitglieder - Kompakt

Nach Teilnahme an dieser Schulung sind Ihnen die Grundlagen von ALM geläufig. Sie planen und steuern Projekte effizient mit dem Visual Studio Team Foundation Server.

VB.NET Einführung

Die Schulung zeigt Ihnen, wie Sie einfache, benutzerorientierte Programme, die auf Datenbanken zugreifen, in VB.NET eigenständig entwickeln. 

<#@ template inherits="Microsoft.VisualStudio.TextTemplating.VSHost.ModelingTextTransformation" language="C#v3.5" debug="true" hostSpecific="true" #>
<#@ output extension="sql" #>
<#@ assembly name="Microsoft.SqlServer.ConnectionInfo"#>
<#@ assembly name="Microsoft.SqlServer.Smo" #>
<#@ import namespace="Microsoft.SqlServer.Management.Smo" #>

-- Next line is only needed on SQL 2008
<#@ assembly name="Microsoft.SqlServer.Management.Sdk.Sfc" #>

<#
	string serverName = @"(local)\SQLEXPRESS";
    string databaseName = @"Northwind";
    Server server = new Server(serverName);       
    Database database = new Database(server, databaseName);
    database.Refresh();	
    foreach (Table table in database.Tables) 
    { 
#>		create procedure <#= table.Name #>_delete 
		@ProductID int    
		as 
		delete from <#= table.Name #> where	 
<#    
		foreach (Column column in table.Columns)
		{			
			if (column.InPrimaryKey)
				WriteLine(column.Name + " = @" + column.Name);
		}
		WriteLine("");
    	WriteLine("");
	
	}
#>
Abgelegt unter T4, Text-Template, Generieren, SQL, Genereate.

1 Kommentare zum Snippet

Tim Fischer schrieb am 28.04.2009:
Das Snippet muss als .tt Datei gespeichert werden. Visual Studio führt .tt Dateien automatisch als Code-Generierungsdateien aus.
Mehr Infos und einen visuellen Editor findet man unter http://t4-editor.tangible-engineering.com
 

Logge dich ein, um hier zu kommentieren!