c# mysql 文件存储_c# 如何实现保存文件到数据库

本文介绍如何使用C#将上传的文件转换为字节数组,并通过SqlConnection对象连接到MySQL数据库,利用参数化查询进行文件数据的插入操作。重点在于将文件数据作为参数添加到SQL命令中,确保文件安全地存储到数据库。
摘要由CSDN通过智能技术生成

//从form 中获取fileData

HttpFileCollection files = Request.Files;

byte[] fileData = new byte[files[0].ContentLength];

files[0].InputStream.Read(fileData, 0, fileData.Length);

void FileStateHandle(string connstr, OptType opt, string fileName,byte[] fileData, string state, string message)

{

SqlConnection sqlconn;

string commandText = null;

SqlCommand cmd = new SqlCommand();

message = message.Replace("'", "''");

fileName = fileName.Replace("'", "''");

sqlconn = new SqlConnection(connstr);

switch(opt){

case OptType.Insert:

commandText = "insert into dbo.SalesTraceUploadedFiles(FileName,FileData,State,Message,Date) select "

+ "'" + fileName + "'"

+ ", @fileData"

+ ",'" + state

+ "','" + message

+ "',getdate()";

cmd.CommandText = commandText;

//此处是重点哦 将filedata 赋值进去

SqlParameter prmFileData = new SqlParameter("@fileData", SqlDbType.VarBinary);

prmFileData.Value = fileData;

prmFileData.Size = fileData.Length;

cmd.Parameters.Add(prmFileData);

break;

case OptType.Update:

commandText = "update SalesTraceUploadedFiles set Message = '"+message+"' ,State = '" + state

+ "' where FileName = '" + fileName + "'";

cmd.CommandText = commandText;

break;

}

try

{

cmd.Connection = sqlconn;

sqlconn.Open();

cmd.ExecuteNonQuery();

}

catch

{

throw;

}

finally{

sqlconn.Close();

cmd.Dispose();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值