现在有个1024长度的byte[]数组,我想存入数据库并读出,网上查的是运用image类型存取,但是读取的不对啊,往大婶赐教,以下是我的代码

解决方案 »

  1.   

     这一段是存入SQL Server的代码,将byte[]类型的aa存入,aa全是1
        string ConnectionStringconnn;        //数据库连接字符串
                ConnectionStringconnn = " Data Source=(local); user id=sa ;password=admin ;initial catalog=abc";
                byte[] aa = new byte[1024];
                for (int i = 0; i <= 1023; i++)
                {
                       aa[i] = Convert.ToByte("2");
                }
                int ID=3;
                SqlConnection conn = new SqlConnection();
                conn.ConnectionString = ConnectionStringconnn;// "Data Source=(local);Initial Catalog=ANT_CTL;user id=sa;password=admin";
                string updatequery =  "insert into TB_DevManage (Content,ID) values ('";//)";
                updatequery += aa + "')";
                SqlCommand cmd = new SqlCommand(updatequery, conn);
                conn.Open();
                int recordsaffected = cmd.ExecuteNonQuery();
                conn.Close();//进行信息回发给客户
      

  2.   

    这是读取的代码,但是读出的imagebytes中长度仅为13,且数据不对  
     byte[] imagebytes = null;
                string ConnectionStringconnn;        //数据库连接字符串
                //打开数据库
                SqlConnection conn = new SqlConnection();
                ConnectionStringconnn = " Data Source=(local); user id=sa ;password=admin ;initial catalog=ANT_CTL";
                conn.ConnectionString = ConnectionStringconnn;// "Data Source=(local);Initial Catalog=ANT_CTL;user id=sa;password=admin";
               
                string Updataquery=("select Content from TB_DevManage where ID=3");
                      SqlCommand com = new SqlCommand(Updataquery, conn);
                conn.Open();
                SqlDataReader dr = com.ExecuteReader();            while (dr.Read())
                {                imagebytes =(byte[])dr.GetSqlBinary(0);            }            dr.Close();            com.Clone();            conn.Close();