2014-01-06 2 views
1

Как создать определенный пользователем тип (например: Point (X int, Y int) С SMO? Я использую VB.NET (или C# .NET) и хочу использовать SMO для создания? I знать должны использовать «UserDefinedType» в SMO, но я не знаю, как ?! БлагодаряСоздать пользовательский тип в SMO

ответ

0

используя следующий пример кода, вы можете создать UserDefinedType с помощью SMO:.

Dim oServer As Microsoft.SqlServer.Management.Smo.Server 
Dim oSMOServer As Microsoft.SqlServer.Management.Smo.Server 
Dim oSMODatabase As Microsoft.SqlServer.Management.Smo.Database 
Dim sUDT As String = "udt_RecordID" 

Try 
    oServer = New Microsoft.SqlServer.Management.Smo.Server() 
    ''Set ServerName 
    oServer.ConnectionContext.ServerInstance = pServerInstanceName 
    ''Set is Windows Authentication 
    oServer.ConnectionContext.LoginSecure = pIsWinAuth 

    ''Set Server UserName & Password, If not Windows Authentication 
    If pIsWinAuth = False Then 
     oServer.ConnectionContext.Login = pUsername 
     oServer.ConnectionContext.Password = pPassword 
    End If 

    Dim oUDTs = oSMOServer.Databases(pDatabaseName).UserDefinedTableTypes 

    ''Add UserDefinedType if not exist 
    If Not oUDTs.Contains(sUDT) Then 
     oSMODatabase = oSMOServer.Databases(pDatabaseName) 
     Dim udtt As UserDefinedTableType 
     udtt = New UserDefinedTableType(oSMODatabase, sUDT) 

     ''Add necessary columns 
     udtt.Columns.Add(New Microsoft.SqlServer.Management.Smo.Column(udtt, "RecordID", DataType.NVarChar(50))) 

     ''Create UserDefinedType 
     udtt.Create() 
    End If 

Catch ex As Exception 
    ''Handle Exception 
End Try 

не стесняйтесь спрашивать, если это необходимо.

+0

Привет, мой друг. Спасибо за ответ, но одна проблема: этот код был для создайте пользовательские типы таблиц. Я хочу создать пользовательские типы в SQL Server с SMO. Это очень важно. – user3164943

Смежные вопросы