none
如何使用parameter来存储数据 RRS feed

  • 常规讨论

  • 使用参数进行存储,直接调用sql语句,不使用存储过程,但是提示:“未将对象引用设置到对象的实例”。

    代码如下:请各位大侠帮我看看,是怎么回事。

     Dim sqlcommand00 As New SqlClient.SqlCommand

                Dim parameter00 As New SqlClient.SqlParameter("@Photo", SqlDbType.Image)
                With parameter00
                    .TypeName = SqlDbType.Image
                    .Direction = ParameterDirection.Input
                    .IsNullable = True
                    .SourceVersion = DataRowVersion.Current
                    .SourceColumn = "Photo"
                End With

                Dim parameter01 As New SqlClient.SqlParameter("@EmployeeID", SqlDbType.VarChar)
                With parameter00
                    .TypeName = SqlDbType.VarChar
                    .Direction = ParameterDirection.Output
                    .IsNullable = True
                    .SourceVersion = DataRowVersion.Current
                    .SourceColumn = "EmployeeID"
                End With

                sqlcommand00.CommandType = CommandType.Text
                sqlcommand00.CommandText = "update Employees set Photo = @Photo where EmployeeID = @EmployeeID"
                sqlcommand00.Parameters.Add(parameter00)
                sqlcommand00.Parameters.Add(parameter01)
                sqlcommand00.Connection.ConnectionString = cn.ConnectionString
                sqlcommand00.ExecuteNonQuery()

    2012年7月16日 3:46

全部回复

  • 请问你的cn的宣告是怎么写的?可以把代码贴上来看看吗?谢谢。

    以上說明若有錯誤請指教,謝謝。
    http://www.dotblogs.com.tw/terrychuang/

    2012年7月16日 5:12
  • Public cn As New SqlClient.SqlConnection() '定义连接语句

    Private connectStringBuilder As New SqlClient.SqlConnectionStringBuilder()

     connectStringBuilder.DataSource = "(local)"
             connectStringBuilder.AttachDBFilename = CurDir() & "\" & 数据库名称 & ".MDF"
            connectStringBuilder.IntegratedSecurity = True
            connectStringBuilder.UserInstance = False

    cn.ConnectionString = connectStringBuilder.ConnectionString
            cn.Open()

    2012年7月16日 6:40
  • 总算自己找到了原因,sql语句也有问题,参数的准备也有问题,联结字符串的传递也有问题。
    参数,没有准备一个参数表示在更改之前的主键信息,语句的问题就是where 语句没有指定主键信息之前和之后的联系。

    连接字符串是低级错误。类型不匹配。

    2012年7月19日 0:39
  • 或许你可以把你最后解决问题的方法,提出来跟大家分享,让遇到类似问题的朋友,也可以从中得到解答,谢谢。

    以上說明若有錯誤請指教,謝謝。
    http://www.dotblogs.com.tw/terrychuang/

    2012年7月19日 0:43