【发布时间】:2015-11-10 12:27:15
【问题描述】:
我正在尝试将输入的输入记录添加到数据表中,但它不起作用。这个我试过了。
vb.net
Imports System.Data
Imports System.Configuration
Imports MySql.Data.MySqlClient
Partial Class index
Inherits System.Web.UI.Page
Dim con As New MySqlConnection("Data Source=204.11.58.166;port=3306;Initial Catalog=quistaBooking;User Id=my_username;password=my_password ;")
Protected Sub confirmBook_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles confirmBook.Click
Dim emailID, contactNo, source, destination, duration, distance, fare, datetime, vehicle As String
emailID = email.Text
contactNo = contact.Text
source = txtSource.Text
destination = txtDestination.Text
duration = dvDuration.Text
distance = dvDistance.Text
datetime = datetimepicker.Text
vehicle = selectVehicle.SelectedItem.ToString
Try
Dim str1 As String = "INSERT INTO logistics ('email', 'contact', 'source', 'destination', 'duration', 'distance', 'dateTime', 'vehicleType') values ('" + emailID + "', '" + contactNo + "', '" + source + "', '" + destination + "', '" + duration + "', '" + datetime + "', '" + vehicle + "')"
Dim data As MySqlDataReader
Dim adapter As New MySqlDataAdapter
Dim command As New MySqlCommand
command.CommandText = str1
command.Connection = con
adapter.SelectCommand = command
data = command.ExecuteReader
con.Close()
Catch ex As Exception
Response.Write(ex)
End Try
End Sub
End Class
错误
System.InvalidOperationException:连接必须有效且打开。在 MySql.Data.MySqlClient.MySqlConnection.Throw(Exception ex) 在 MySql.Data.MySqlClient.MySqlCommand.CheckState() 在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior 行为) 在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader () at index.confirmBook_Click(Object sender, EventArgs e) in E:\MY WEB\Quista\Website\index.aspx.vb:line 58
谁能帮我解决我哪里出错了?
更新错误
MySql.Data.MySqlClient.MySqlException (0x80004005):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ''email'、'contact'、'source'、'destination'、'duration'、'distance'、'dateTime''附近使用正确的语法在 MySql.Data.MySqlClient.MySqlStream.ReadPacket() 在 MySql.Data.MySqlClient.NativeDriver.GetResult(Int32&affectedRow, Int64&insertedId) 在 MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32&affectedRows, Int64& insertedId) 在MySql.Data.MySqlClient.MySqlDataReader.NextResult() 的 MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force) 在 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior 行为) 在 MySql.Data.MySqlClient.MySqlCommand .ExecuteReader() at index.confirmBook_Click(Object sender, EventArgs e) in E:\MY WEB\Quista\Website\index.aspx.vb:line 59
【问题讨论】: