c#.net上传文件到数据库中(把文件转换成二进制流存在后台数据库)
2008-11-23 15:15
369 查看
OpenFileDialog testreportfile = new OpenFileDialog();
testreportfile.InitialDirectory = @"c:/";
testreportfile.RestoreDirectory = true;
testreportfile.Multiselect = false;
if (testreportfile.ShowDialog() == DialogResult.OK)
{
this.textBox8.Text = testreportfile.FileName;
filename = testreportfile.FileName.Substring(testreportfile.FileName.LastIndexOf("//") + 1, (testreportfile.FileName.LastIndexOf(".") - testreportfile.FileName.LastIndexOf("//") - 1)); //文件的名称
filetype = testreportfile.FileName.Substring(testreportfile.FileName.LastIndexOf(".") + 1, (testreportfile.FileName.Length - testreportfile.FileName.LastIndexOf(".") - 1));//文件的扩展名
Stream myStream = testreportfile.OpenFile();
int length = (int)myStream.Length;
filedata = new byte[length];
myStream.Read(filedata, 0, length); myStream.Close();
SqlCommand scwj = new SqlCommand("insert_testreport", myConnection);
scwj.CommandType = CommandType.StoredProcedure;
scwj.Parameters.Add("@PID", SqlDbType.Int);
scwj.Parameters.Add("@TRCode", SqlDbType.VarChar, 20);
scwj.Parameters.Add("@TRDate", SqlDbType.DateTime);
scwj.Parameters.Add("@MMID", SqlDbType.Int);
scwj.Parameters.Add("@TOrgan", SqlDbType.VarChar, 200);
scwj.Parameters.Add("@UName", SqlDbType.VarChar, 20);
scwj.Parameters.Add("@Explian", SqlDbType.VarChar, 200);
scwj.Parameters.Add("@FileName", SqlDbType.VarChar, 40);
scwj.Parameters.Add("@FileType", SqlDbType.Char, 10);
scwj.Parameters.Add("@FileData", SqlDbType.Image);
scwj.Parameters[0].Value = report_add_pid;
scwj.Parameters[1].Value = textBox3.Text.Trim();
scwj.Parameters[2].Value = dateTimePicker1.Value;
scwj.Parameters[3].Value = report_add_mmid;
scwj.Parameters[4].Value = textBox5.Text.Trim();
scwj.Parameters[5].Value = login.strUser;
scwj.Parameters[6].Value = textBox6.Text.Trim();
scwj.Parameters[7].Value = filename;
scwj.Parameters[8].Value = filetype;
scwj.Parameters["@FileData"].Value = filedata;
myConnection.Open();
scwj.ExecuteNonQuery();
myConnection.Close();
}
testreportfile.InitialDirectory = @"c:/";
testreportfile.RestoreDirectory = true;
testreportfile.Multiselect = false;
if (testreportfile.ShowDialog() == DialogResult.OK)
{
this.textBox8.Text = testreportfile.FileName;
filename = testreportfile.FileName.Substring(testreportfile.FileName.LastIndexOf("//") + 1, (testreportfile.FileName.LastIndexOf(".") - testreportfile.FileName.LastIndexOf("//") - 1)); //文件的名称
filetype = testreportfile.FileName.Substring(testreportfile.FileName.LastIndexOf(".") + 1, (testreportfile.FileName.Length - testreportfile.FileName.LastIndexOf(".") - 1));//文件的扩展名
Stream myStream = testreportfile.OpenFile();
int length = (int)myStream.Length;
filedata = new byte[length];
myStream.Read(filedata, 0, length); myStream.Close();
SqlCommand scwj = new SqlCommand("insert_testreport", myConnection);
scwj.CommandType = CommandType.StoredProcedure;
scwj.Parameters.Add("@PID", SqlDbType.Int);
scwj.Parameters.Add("@TRCode", SqlDbType.VarChar, 20);
scwj.Parameters.Add("@TRDate", SqlDbType.DateTime);
scwj.Parameters.Add("@MMID", SqlDbType.Int);
scwj.Parameters.Add("@TOrgan", SqlDbType.VarChar, 200);
scwj.Parameters.Add("@UName", SqlDbType.VarChar, 20);
scwj.Parameters.Add("@Explian", SqlDbType.VarChar, 200);
scwj.Parameters.Add("@FileName", SqlDbType.VarChar, 40);
scwj.Parameters.Add("@FileType", SqlDbType.Char, 10);
scwj.Parameters.Add("@FileData", SqlDbType.Image);
scwj.Parameters[0].Value = report_add_pid;
scwj.Parameters[1].Value = textBox3.Text.Trim();
scwj.Parameters[2].Value = dateTimePicker1.Value;
scwj.Parameters[3].Value = report_add_mmid;
scwj.Parameters[4].Value = textBox5.Text.Trim();
scwj.Parameters[5].Value = login.strUser;
scwj.Parameters[6].Value = textBox6.Text.Trim();
scwj.Parameters[7].Value = filename;
scwj.Parameters[8].Value = filetype;
scwj.Parameters["@FileData"].Value = filedata;
myConnection.Open();
scwj.ExecuteNonQuery();
myConnection.Close();
}
相关文章推荐
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- C#.net 上传,下载文件(数据库)
- Asp.net上传文件后台通过二进制流发送到其他Url保存
- C#.net 通过后台 上传文件案例
- C#将文件上传、下载(以二进制流保存到数据库)
- ASP.NET (C#版)如何将文件上传至数据库(源代码)
- asp.net(c#)如何读取上传过程中的.txt文件中的数据,并将其写入数据库的
- asp.net(C#) 上传Execl文件 并插入数据到数据库实例
- asp.net(C#) 上传Execl文件 并插入数据到数据库实例
- asp.net(C#) 上传Execl文件 并插入数据到数据库实例
- c#.net从后台数据库中下载文件
- asp.net(C#) 上传Execl文件 并插入数据到数据库实例
- C#后台判断上传文件大小
- asp.net 上传文件并将路径写入数据库
- Ext 上传文件,前后台实现, Asp.net 代码
- ASP.NET WinForm C# 上传文件测试代码。
- ASP.NET(C#)FileUpload实现上传限定类型和大小的文件到服务器
- 一个Windows后台服务(.Net的C#版) - 定时访问数据库循环发送手机短信
- 文件上传限制大小 dotnet/C#
- 使用ASP.NET上传多个文件到数据库