c#怎么存取sqlserver数据库binary类型,如下题

 我来答
玩转数据处理
推荐于2017-11-27 · 数据处理,Python,dotnet
玩转数据处理
采纳数:1613 获赞数:3794

向TA提问 私信TA
展开全部
//把文件转成二进制流出入数据库
private void button2_Click(object sender, EventArgs e)
{
    FileStream fs = new FileStream(textBox1.Text, FileMode.Open);
    BinaryReader br = new BinaryReader(fs);
    Byte[] byData = br.ReadBytes((int)fs.Length);
    fs.Close();
    string conn = "server=.;database=testDB;Uid=sa;Pwd=sa ";
    SqlConnection myconn = new SqlConnection(conn);
    myconn.Open();
    string str = "insert into pro_table (pro_name,pro_file) values('测试文件',@file)";
    SqlCommand mycomm = new SqlCommand(str, myconn);
    mycomm.Parameters.Add("@file", SqlDbType.Binary, byData.Length);
    mycomm.Parameters["@file"].Value = byData;
    mycomm.ExecuteNonQuery();
    myconn.Close();
}

//从数据库中把二进制流读出写入还原成文件
private void button4_Click(object sender, EventArgs e)
{
    string conn = "server=.;database=testDB;Uid=sa;Pwd=sa ";
    string str = "select pro_file from pro_table where pro_name='测试文件' ";
    SqlConnection myconn = new SqlConnection(conn);
    SqlDataAdapter sda = new SqlDataAdapter(str, conn);
    DataSet myds = new DataSet();
    myconn.Open();
    sda.Fill(myds);
    myconn.Close();
    Byte[] Files = (Byte[])myds.Tables[0].Rows[0]["pro_file"]; 
    BinaryWriter bw = new BinaryWriter(File.Open("D:\\2.rdlc",FileMode.OpenOrCreate));
    bw.Write(Files);
    bw.Close();
      
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式