Announcement

Collapse
No announcement yet.

CLR-Programmierung mit Express Edition

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • CLR-Programmierung mit Express Edition

    Wie kann die CLR des SQL-Server-Express in C# programmiert werden? Geht dies mit der C# Express-Edition ?

  • #2
    Hallo,
    dazu reichen Notepad und die Kommandozeilen-Kompiler aus dem .NET Framework 2.0 aus. Ich habe dafür aber nur ein VB.NET-Beispiel für den Kommandozeilen-Kompiler am Lager :-)
    <code>
    <font color="#0000FF">Imports</font> System
    <font color="#0000FF">Imports</font> System.Data
    <font color="#0000FF">Imports</font> System.Data.Sql
    <font color="#0000FF">Imports</font> System.Data.SqlTypes
    <font color="#0000FF">Imports</font> Microsoft.SqlServer.Server

    Partial <font color="#0000FF">Public</font> <font color="#0000FF">Class</font> StoredProcedures

    &lt;Microsoft.SqlServer.Server.SqlProcedure()&g t; _
    <font color="#0000FF">Public</font> <font color="#0000FF">Shared</font> <font color="#0000FF">Sub</font> HelloWorld ()
    SqlContext.Pipe().Send("Hallo Welt - hier ist die 1. eigene CLR Stored Procedure")
    <font color="#0000FF">End</font> <font color="#0000FF">Sub</font>

    <font color="#0000FF">End</font> <font color="#0000FF">Class</font>
    </code>
    Zum Kompilieren kann eine BAT-Datei verwendet werden, die aus den folgenden Zeilen besteht:
    <code>
    Set Path=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 \;%PATH%
    vbc /target:library /r:System.dll,System.Data.dll OSNotepadSP.vb
    Pause
    </code>
    Das Installieren und Testen der CLR-Stored Procedure in einer Datenbank ist auch schnell von Hand erledigt:
    <code>
    <b>EXEC</b> sp_configure <font color="#9933CC">'clr enabled'</font>, 1
    <b>GO</b>

    RECONFIGURE
    <b>GO</b>

    USE OSDEMO
    <b>GO</b>

    <b>CREATE</b> ASSEMBLY [OSNotepadSP]
    <b>AUTHORIZATION</b> [dbo]
    <b>FROM</b> <font color="#9933CC">'C:\Programme\OSNotepadSP.dll'</font>
    <b>WITH</b> PERMISSION_SET = SAFE
    <b>GO</b>

    <b>CREATE</b> <b>PROCEDURE</b> [clrspHelloWorld]
    <b>AS</b> <b>EXTERNAL</b> NAME [OSNotepadSP].[StoredProcedures].[HelloWorld]
    <b>GO</b>

    -- Testen
    <b>EXEC</b> clrspHelloWorld
    </code>
    <br>
    P.S: Erst ab der Professional-Version von Visual Studio 2005 sind die Projektvorlagen dabei, aber rein technisch betrachtet sind diese nicht notwendig (nur der Komfort ist höher).

    Comment

    Working...
    X