Hallo Forum,
@ Moderatoren: War mir nicht sicher in welches Forum das gehört. Bitte gfs. verschieben. Danke.
Code unter VB.Net mit einer SqlServerCe - Datenbank.
Die DB nutzte ich wie in dem Turorial erklärt.
Bin auf dem Gebiet blutiger Anfänger. Für SqlServerCe habe ich mich entschieden auf Grund einer Empfehlung hier im Forum. Nach nächtelangem googeln habe ich einzig das obige Tutorial gefunden um auch damit arbeiten zu können. Geht soweit auch.
Meine Fragen:
1) Wie kann ich (geschickt) prüfen ob die Datenbank schon existiert?
2) Wie kann ich (geschickt) prüfen ob eine bestimmte Tabelle existiert?
2.1) Wie kann ich "As DataTable" verwenden?
Zu 1) Da SqlServerCe ja nur aus einer Datei besteht mache ich das so:
Das geht. Ist das auch die übliche Vorgehensweise oder würdet Ihr das anders (besser) lösen?
Zu 2) Hier scheitere ich mit folgendem Versuch:
Leider returned diese Funktion immer True. Eigentlich auch klar, das Objekt gibt es ja auch, aber ich will ja prüfen ob es leer ist...
Gibt es da nicht einen besseren Ansatz? Also direkt mit SQL-Befehl prüfen ob die Tabelle existier und boolean zurückliefern, doer so?
Zu 2.1 Dadurch erklärt sich auch diese Frage. Wie kann ich denn eine DataTable überprüfen ob oder vieviele Datensätze enhalten sind?
Danke für Eure Hilfe!
@ Moderatoren: War mir nicht sicher in welches Forum das gehört. Bitte gfs. verschieben. Danke.
Code unter VB.Net mit einer SqlServerCe - Datenbank.
Die DB nutzte ich wie in dem Turorial erklärt.
Bin auf dem Gebiet blutiger Anfänger. Für SqlServerCe habe ich mich entschieden auf Grund einer Empfehlung hier im Forum. Nach nächtelangem googeln habe ich einzig das obige Tutorial gefunden um auch damit arbeiten zu können. Geht soweit auch.
Meine Fragen:
1) Wie kann ich (geschickt) prüfen ob die Datenbank schon existiert?
2) Wie kann ich (geschickt) prüfen ob eine bestimmte Tabelle existiert?
2.1) Wie kann ich "As DataTable" verwenden?
Zu 1) Da SqlServerCe ja nur aus einer Datei besteht mache ich das so:
Code:
If System.IO.File.Exists(My.Application.Info.DirectoryPath & "\test.sdf") = False Then CreateSQL() End If
Zu 2) Hier scheitere ich mit folgendem Versuch:
Code:
If TABLEEXISTS(TABLENAME) = False Then CreateTable() End If Public Function TABLEEXISTS(ByVal TABLENAME As String) As Boolean Dim conn As New SqlCeConnection Dim cmd As New SqlCeCommand conn.ConnectionString = Me._appPath cmd.Connection = conn cmd.CommandText = "Select * From Information_Schema.Tables Where Table_Name = '" & TABLENAME & "'" Dim da As New SqlCeDataAdapter(cmd) Dim dt As New DataTable conn.Open() da.Fill(dt) cmd.ExecuteNonQuery() conn.Close() If dt Is Nothing Then Return False Else Return True End If End Function
Gibt es da nicht einen besseren Ansatz? Also direkt mit SQL-Befehl prüfen ob die Tabelle existier und boolean zurückliefern, doer so?
Zu 2.1 Dadurch erklärt sich auch diese Frage. Wie kann ich denn eine DataTable überprüfen ob oder vieviele Datensätze enhalten sind?
Danke für Eure Hilfe!
Comment