我的数据库中有大约 1k 条记录,其中包含人口统计信息 + 图像列。当前所有图像都驻留在文件系统中,我被分配了拾取这些图像并将其存储在数据库中的任务。
我的目标是
1. 使用 ASP.NET,从文件系统中读取图像文件
2. 将图像存储在 SQL Server 2008 数据库中
到目前为止,我已经看到这可能只使用 FileUpload 方法,这将是非常乏味的。
任何帮助,非常感谢
谢谢,尼尔
我的数据库中有大约 1k 条记录,其中包含人口统计信息 + 图像列。当前所有图像都驻留在文件系统中,我被分配了拾取这些图像并将其存储在数据库中的任务。
我的目标是
1. 使用 ASP.NET,从文件系统中读取图像文件
2. 将图像存储在 SQL Server 2008 数据库中
到目前为止,我已经看到这可能只使用 FileUpload 方法,这将是非常乏味的。
任何帮助,非常感谢
谢谢,尼尔
这是一个很好的方法,它包括 VB 和 C# 代码:http ://www.aspsnippets.com/Articles/Save-and-Retrieve-Files-from-SQL-Server-Database-using-ASP.Net .aspx
如果您需要进行批量加载,只需在代码周围循环,并将目录中的文件列表提供给它。
Asp.net 不适合批量加载任务。
由于文件已经在您的文件系统上,一个简单的控制台应用程序可以完成任务。
代码:
var files = Directory.GetFiles(@"MY_PATH");
foreach (var file in files)
{
var data = File.ReadAllBytes(file);
var fileName = Path.GetFileName(file);
string strQuery = "insert into imageData(Name, Data) values (@Name,@Data)";
SqlCommand cmd = new SqlCommand(strQuery);
cmd.Parameters.Add("@Name", SqlDbType.VarChar).Value = filename;
cmd.Parameters.Add("@Data", SqlDbType.Binary).Value = data;
cmd.ExecuteNonQuery();
}