SQL logic error oder fehlende Datenbank keine Tabelle mit dem beim löschen aus der Datenbank
Meine Verbindung:
Public con As SQLiteConnection = New SQLiteConnection("Data Source=trancebeats.s3db")
ich öffne Verbindung beim laden der form
Einfügen neuer Wert:
Public Sub InsertNewCatSub()
prUpdate.Value = 0
prUpdate.Maximum = 1
lblUpdateResults.Text = prUpdate.Value & " of " & prUpdate.Maximum & " Checked"
lblUpdateResults.ForeColor = Color.Red
TotUpd = 0
TotNew = 0
Dim filename1 = Path.GetFileNameWithoutExtension(NewCat)
Dim filename2 = filename1.Replace("[", "")
Dim filename3 = filename2.Replace("]", "")
Dim filename4 = Path.GetDirectoryName(NewCat)
If con.State = ConnectionState.Closed Then
con.Open()
End If
Dim Querytxt As String = "Select * from trancebeats Where Cat = '" & filename3 & "' Group By Cat"
Dim Adp As SQLiteDataAdapter = New SQLiteDataAdapter
Dim Cmd As SQLiteCommand = New SQLiteCommand
Dim TableNewCat As New DataTable
TableNewCat.Rows.Clear()
Dim i As Integer
With Cmd
.CommandText = Querytxt
.Connection = con
End With
With Adp
.SelectCommand = Cmd
.Fill(TableNewCat)
End With
If TableNewCat.Rows.Count > 0 Then
For i = 0 To TableNewCat.Rows.Count - 1
If filename3 = TableNewCat.Rows(i)("Cat") Then
MsgBox("Cat. Already Exists!!!")
Else
GoTo write_new_cat
End If
Next
Else
write_new_cat:
Try
Dim file As String = NewCat
Dim filepath As String = file.Substring(0, file.LastIndexOf("\"))
Dim lines As New List(Of String)
lines.AddRange(System.IO.File.ReadAllLines(NewCat))
For co As Integer = 0 To lines.Count - 1
If lines(co).Length > 0 Then
Try
Dim a1() As String = lines(co).Split("|")
Dim Cat As String = a1(0)
Dim Title As String = a1(1)
Dim Artist As String = a1(2)
Dim Album As String = a1(3)
Dim Year As String = a1(4)
Dim Genre As String = a1(5)
Dim Publisher As String = a1(6)
Dim Site As String = a1(7)
Dim MP3File As String = filepath & "\" & a1(8)
Dim Cover As String = filepath & "\[" & Cat & "].jpg"
Dim CmdwrtN As SQLiteCommand = New SQLiteCommand
With CmdwrtN
.CommandText = "Insert Into trancebeats Values('" _
& Cat & "', '" & Title & "', '" & Artist & "', '" & Album & "', " & Year & ", '" & Genre & "', '" & Publisher & "', '" & Site & "', '" & filepath.Replace("'", "''") & "', '" & Cover.Replace("'", "''") & "', '" & MP3File.Replace("'", "''") & "')"
.Connection = con
.ExecuteScalar()
End With
Catch ex As Exception
MsgBox(ex.Message & NewCat)
End Try
End If
Next
TotNew += 1
Catch ex As Exception
MessageBox.Show(ex.ToString, "Error Reading File " & NewCat)
End Try
btnClear.Enabled = True
End If
con.Close()
prUpdate.Value += 1
lblUpdateResults.Text = prUpdate.Value & " of " & prUpdate.Maximum & " Checked"
End Sub
Alles löschen aus der Datenbank:
Private Sub btnClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClear.Click
If con.State = ConnectionState.Closed Then
con.Open()
End If
Dim Querytxt As String = "Delete from trancebeats"
Dim Cmd As SQLiteCommand = New SQLiteCommand
Try
With Cmd
.CommandText = Querytxt
.Connection = con
.ExecuteScalar()
MsgBox("Data Cleared")
Dim pn As Panel
pn = Me.Controls.Item("pnNew")
Me.Controls.Remove(pn)
flResults.Controls.Clear()
btnClear.Enabled = False
End With
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
wenn ich klar die Datenbank
Ich fügen Sie eine neue Zeile aus Datei
wenn ich dann versuchen zu klären, Datenbank agail
es gibt mir eine Fehlermeldung:
SQL logic error oder fehlende Datenbank keine Tabelle mit dem Namen: Trance-Beats
jemand meine Frage beantworten bitte!!!
InformationsquelleAutor Dave Mas | 2013-11-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht sicher, ob dies wird Ihnen helfen, aber ich lief in ein ähnliches problem:
'keine solche Tabelle: ***'
In meinem Fall erwies sich die Tatsache, dass meine Verbindungszeichenfolge angeben, die Datenbank als relativer Pfad:
Alles funktionierte Prima, bis ich würde ein "OpenFileDialog' in meine Anwendung. Das ändert Aktuelles Verzeichnis, und wirft die Verbindungszeichenfolge. Eine schnelle Lösung, ist die Verwendung von absoluten Pfad für die Datenbank in der Verbindungszeichenfolge:
Nein - ich meine, es wird ändern Sie das aktuelle Verzeichnis der Anwendung, und wenn die Verbindung ist die Verwendung relativer Pfad ist, wird es vermasseln, weil es. So setzen Sie vollständigen Pfad in der Verbindungszeichenfolge - einschließlich Laufwerksbuchstabe, und wenn es das gleiche problem, das ich hatte, es zu beheben.
Ich habe versucht, was du gesagt hast .... Ich räumte die Datenbank und dann habe ich eine Zeile eingefügt, die von Datei-und openfiledialog .... Ich hatte keine Fehler...
InformationsquelleAutor Eternal21