asp.net 如何将FileUpload选中的图片存到sql2005数据库???下面我用写的方法存老是出错:"必须声明标量变量@img"Dim fs As FileStream = New FileStream(FileUpload1.PostedFile.FileName, FileMode.Open, FileAccess.Read)
        Dim bt(fs.Length) As Byte
        fs.Read(bt, 0, fs.Length)
        fs.Close()
        fs = Nothing
        Dim conn As New Data.OleDb.OleDbConnection
        conn.ConnectionString = "Provider=SQLOLEDB.1;Data Source=(local);Initial Catalog=master;Integrated Security=SSPI"
        conn.Open()
        Dim rs As Data.OleDb.OleDbCommand = New Data.OleDb.OleDbCommand
        rs.Connection = conn        rs.CommandType = Data.CommandType.Text
        rs.CommandText = "insert into 多功能系统.dbo.表(im) values (@img)"
        rs.Parameters.Add("@img", Data.OleDb.OleDbType.Binary).Value = bt
        rs.ExecuteNonQuery()
          运行后老是出错:"必须声明标量变量@img"
不知道为什么!我用这种方法存入Access都行,怎么回事?谁有另一种存法?

解决方案 »

  1.   

    rs.Parameters.Add("@img", Data.OleDb.OleDbType.Binary, bt)
      

  2.   

    已经是sql server 2005数据库了,为什么不用SqlConnection SqlCommand SqlDbType?
      

  3.   

    楼上的建议确实是不错!我刚刚换了sqlconnection 就行了
      

  4.   

    一看就像是从老VB抄来的写法哈哈SqlConnection 用这个多好
      

  5.   


            SqlParameter sp = new SqlParameter("@img", SqlDbType.Image);
            sp.Direction = ParameterDirection.Input;
            sp.Value = bt;
            rs.Parameters.Add(sp);
            rs.ExecuteNonQuery();