【发布时间】:2023-03-30 14:12:01
【问题描述】:
大家好,我是 vb.net 的初学者,正在尝试为我的视频制作应用程序
我在将演员的生日插入 sql server 数据库时遇到问题
sql server 中的生日字段设置为日期而不是日期时间
假设生日 = 02-13-1980 当我点击保存按钮时出现错误
“02-13-1980”附近的语法不正确
感谢您的帮助
这是我的课
Imports System.Data.Sql
Imports System.Data.SqlClient
Public Class SQL_Control
Public SQLCon As New SqlConnection With {.ConnectionString = "Server=TRUCK-PC\TRUCK;Database=Videos;User=sa;Pwd=123456;"}
Public SQLCmd As SqlCommand
Public SQLDA As SqlDataAdapter
Public SQLDataset As DataSet
Public Function HasConnection() As Boolean
Try
SQLCon.Open()
SQLCon.Close()
Return True
Catch ex As Exception
MsgBox(ex.Message)
Return False
End Try
End Function
Public Sub RunQuery(Query As String)
Try
SQLCon.Open()
SQLCmd = New SqlCommand(Query, SQLCon)
SQLDA = New SqlDataAdapter(SQLCmd)
SQLDataset = New DataSet
SQLDA.Fill(SQLDataset)
SQLCon.Close()
Catch ex As Exception
MsgBox(ex.Message)
If SQLCon.State = ConnectionState.Open Then
SQLCon.Close()
End If
End Try
End Sub
Public Sub AddNewActor(S_ActorName As String, S_ActorNationality As String, S_ActorBirthDate As Date)
Try
Dim strInsert As String = "INSERT INTO Videos (Actor_Name,Actor_Nationality,Actor_Birth_Date) " & _
"VALUES (" & _
"'" & S_ActorName & "'," & _
"'" & S_ActorNationality & "'," & _
"'" & S_ActorBirthDate & "'"
MsgBox(strInsert)
SQLCon.Open()
SQLCmd = New SqlCommand(strInsert, SQLCon)
SQLCmd.ExecuteNonQuery()
SQLCon.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
End Class
这是我的表单代码
Imports System.Data.SqlClient
Public Class F2_Actors
Dim SQL As New SQL_Control
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
SQL.RunQuery("SELECT * FROM tbl_actors WHERE tbl_actors.Actor_Name = '" & ActorName.Text & "' ")
If SQL.SQLDataset.Tables(0).Rows.Count > 0 Then
MsgBox("Actor already exist", MsgBoxStyle.Critical, "Videos Database - Adding New Actor")
Else
AddActor()
End If
End Sub
Public Sub AddActor()
SQL.AddNewActor(ActorName.Text, ActorNationality.Text, ActorBirthDate.Text)
End Sub
End Class
【问题讨论】:
-
发布您遇到问题的代码 sn-p。根据错误消息,
INSERT似乎有语法错误,也没有参数化。始终使用参数化查询。 -
Dan guzman 我把代码 sn-p 你能帮我解决这个问题吗?我发现添加参数有困难,因为我在一个类中添加了代码,然后我以指定的形式调用它
标签: sql-server vb.net