2015-07-01 5 views
-2

Итак, каждый раз, когда я пытаюсь отправить запись в mysql, я получаю эту ошибку. конца моего IP-адрес: 178.xxx.152.174 так я судимые переписать из текстового поля в строки, все еще получает эту ошибку, вот таблица MySQL, пожалуйста, помогите мне избавиться от этой ошибкиУ вас есть ошибка в sql синтаксисе vb.net

INSERT INTO `penusers`(`id`, `name`, `username`, `password`, `email`, `proglang`, `status`, `perm`, `btcaddress`, `grade`, `memsince`, `ip`, `info`) VALUES ([value-1],[value-2],[value-3],[value-4],[value-5],[value-6],[value-7],[value-8],[value-9],[value-10],[value-11],[value-12],[value-13]) 



    If fname.Text = "" Or uname.Text = "" Or pass.Text = "" Or email.Text = "" Or btcadd.Text = "" Or pl.SelectedItem = "" Or info.Text = "" Then 
     MsgBox("Please fill all fields." + Environment.NewLine + "If you dont have a Bitcoin Wallet , please get one!") 
    Else 



     Dim fname1 As String 
     Dim uname1 As String 
     Dim pass1 As String 
     Dim email1 As String 
     Dim btcadd1 As String 
     Dim info1 As String 
     Dim pl1 As String 
     fname1 = fname.Text 
     uname1 = uname.Text 
     pass1 = pass.Text 
     email1 = email.Text 
     btcadd1 = btcadd.Text 
     info1 = info.Text 
     pl1 = pl.SelectedItem.ToString() 
     Dim dt As Date = Today 
     Dim client As New System.Net.WebClient 
     Dim ip As String 
     ip = client.DownloadString("https://api.ipify.org") 



     Dim con As New MySqlConnection 
     Dim result As Integer 

     Dim cmd As New MySqlCommand 

     con.ConnectionString = ("server=192.168.1.3;user id=Nemanja030;password=31de1998;database=codehg") 

     Try 
      'we open Connection 
      con.Open() 

      With cmd 
       .Connection = con 
       .CommandText = "INSERT INTO `penusers`(`name`, `username`, `password`, `email`, `proglang`, `status`, `perm`, `btcaddress`, `grade`, `memsince`, `ip`, `info`) VALUES (" & fname1 & " ," & uname1 & "," & pass1 & "," & email1 & "," & pl1 & ",0,1," & btcadd1 & ",5," & dt & "," & ip & "," & info1 & ")" 

       result = cmd.ExecuteNonQuery 
       'if the result is equal to zero it means that no rows is inserted or somethings wrong during the execution 
       If result = 0 Then 
        MsgBox("Data has been Inserted!") 
       Else 
        MsgBox("Successfully saved!") 

       End If 
      End With 
     Catch ex As Exception 
      MsgBox(ex.Message) 
     End Try 
     con.Close() 
    End If 
End Sub 
+0

Dont вы положили ваш запрос в одно-/двойные кавычки? –

+0

параметры использования ... –

ответ

-1

Я думаю, вы должны изменить свой CommandText на:

INSERT INTO penusers(name, username, password, email, proglang, status, perm, btcaddress, grade, memsince, ip, info) VALUES (" & fname1 & " ," & uname1 & "," & pass1 & "," & email1 & "," & pl1 & ",0,1," & btcadd1 & ",5," & dt & "," & ip & "," & info1 & ") 
+2

не поощряют неправильные методы кодирования:/ –

+0

Я не поощрял его. Я просто удалил символы «' »из его исходного командного текста. cheers –

0

Всегда используйте параметры с SQL команд:

With cmd 
    .Connection = con 
    .CommandText = "INSERT INTO `penusers`(`name`, `username`, `password`, `email`, `proglang`, `status`, `perm`, `btcaddress`, `grade`, `memsince`, `ip`, `info`) VALUES (@fname, @uname, @pass, @email, @pl1, 0, 1, @btcadd1, 5, @dt, @ip, @info1)" 
    .Parameters.Add("@fname",SqlDbType.VarChar).Value = fname1 
    'Do this for all your parameters 

    result = cmd.ExecuteNonQuery 
    'if the result is equal to zero it means that no rows is inserted or somethings wrong during the execution 
    If result = 0 Then 
     MsgBox("Data has been Inserted!") 
    Else 
     MsgBox("Successfully saved!") 
    End If 
End With 
+0

Я попробую это, результаты il post –

+0

Получение этой ошибки: необработанное исключение типа «MySql.Data.MySqlClient.MySqlException» произошло в MySql.Data.dll на этом: result = cmd.ExecuteNonQuery –

+0

проверить внутреннее исключение сообщение и попытаться удалить ' –

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