Hallo .Net Gemeinde
ich habe ein kleines Problem mit einer Serververbindung (SQL Express).
In dem Code wird eine Datenbank erstellt mit den dazugehörigen Tabellen. Das funktioniert auch soweit. Jetzt habe ich bei der Vorletzten Tabelle absichtlich mal einen Fehler eingebaut! Eigentlich sollte die Fehlerroutine die komplette Datenbank wieder löschen aber ich bekomme immer die Meldung das die Datenbank noch verwendet wird und daher nicht gelöscht werden kann ????????????
Was mache ich falsch ?
Hier die komplette Sub Teil 1
Public Sub GenerateDB()
Dim result As MsgBoxResult
result = MsgBox("Die Datenbank BoxMaster existiert noch nicht. Möchten" & _
"Sie sie jetzt erstellen ?", MsgBoxStyle.OkCancel, "BoxMaster")
If result = MsgBoxResult.Ok Then
Dim conItems As String
Dim DB_Server As String
Dim DB_Name As String
Dim con As SqlConnection
Dim cmd As SqlCommand
Dim Err As Boolean = False
DB_Server = cSettings.DATABASE_SERVER
DB_Name = cSettings.DATABASE_NAME
con = New SqlConnection("Data Source=" & DB_Server & "; Integrated" & _
"Security=TRUE")
con.Open()
Try
'Datenbank erstellen
cmd = New SqlCommand("CREATE DATABASE " & DB_Name, con)
cmd.ExecuteNonQuery()
Catch ex As Exception
MsgBox(ex.Message)
End Try
con.Close()
'Verbindung mit neuer Datenbank herstellen
con.ConnectionString = "Data Source=" & DB_Server & "; Initial" & _
"Catalog=" & DB_Name & "; Integrated Security=TRUE"
con.Open()
'******************************************************************
' ************************************************
'
' Tabellen anlegen
'
'******************************************************************
' ************************************************
Try
' (1) Tabelle Gitterboxtypen erstellen
cmd = New SqlCommand("CREATE TABLE Gitterboxtypen (ID Varchar(" & _
"32) Primary Key, Typbezeichnung Varchar(50))", con)
cmd.ExecuteNonQuery()
' (2) Tabelle Servicefirmen erstellen
cmd.CommandText = "CREATE TABLE Servicefirmen (ID Varchar(32)" & _
"Primary Key, Firma Varchar(50), Strasse Varchar(50), Plz" & _
"Varchar(10), Ort Varchar(50), Telefon Varchar(50))"
cmd.ExecuteNonQuery()
' (3) Tabelle Gitterboxen erstellen
cmd.CommandText = "CREATE TABLE Gitterboxen (ID Varchar(32)" & _
"Primary Key, Bezeichnung Varchar(50), Erstellungsdatum" & _
"SmallInt, Smallint Varchar(10), Abgeschlossen Bit, GT_ID" & _
"Varchar(32) references Gitterboxtypen(ID), SF_ID Varchar(32)" & _
"references Servicefirmen(ID))"
cmd.ExecuteNonQuery()
' (4) Tabelle Geraetehersteller erstellen
cmd.CommandText = "CREATE TABLE Geraetehersteller (ID Varchar(" & _
"32) Primary Key, Herstellername Varchar(50))"
cmd.ExecuteNonQuery()VB RULEZ !  |