空路径名不合法

时间:2015-12-29 13:14:54

标签: sql-server vb.net sql-server-2008

此代码在将数据与图像一起插入数据库时​​起作用。问题是当我没有在PictureBox中放置图像时。它给了我错误:

  

第3行中的空路径名不合法

我想要的是即使用户没有选择图片。其他数据将被插入,不会出错。

cmd.Parameters.Add("@SurName", SqlDbType.VarChar, 100).Value = txtStudFN.Text
cmd.Parameters.Add("@FirstName", SqlDbType.VarChar, 100).Value = txtStudLN.Text  
cmd.Parameters.Add(New SqlClient.SqlParameter("@StudPic", SqlDbType.Image)).Value = IO.File.ReadAllBytes(a.FileName)

1 个答案:

答案 0 :(得分:1)

如果没有图片,您可以指定DBNull.Value

例如,如果a.FileName是图像文件名,则可以使用:

cmd.Parameters.Add(New SqlParameter("@StudPic", SqlDbType.Image))
If (Not String.IsNullOrEmpty(Me.Name) AndAlso System.IO.File.Exists(a.FileName)) Then
    cmd.Parameters("@StudPic").Value = System.IO.File.ReadAllBytes(a.FileName)
Else
    cmd.Parameters("@StudPic").Value = DBNull.Value
End If