我的数据库中有大约1k条记录,其中包含人口统计信息+图像列。所有图像当前都驻留在文件系统中,我被分配了拾取这些图像并将其存储在数据库中的任务。
我的目标是 1.使用ASP.NET,从文件系统中读取图像文件 2.将映像存储在SQL Server 2008数据库中
到目前为止,我已经看到这种情况只能使用FileUpload方法,这将非常繁琐。
任何帮助,非常感谢
谢谢, 尼尔
答案 0 :(得分:0)
这是一个非常好的操作方法,它包含VB和C#代码:http://www.aspsnippets.com/Articles/Save-and-Retrieve-Files-from-SQL-Server-Database-using-ASP.Net.aspx
如果你需要进行批量加载,只需在代码周围抛出一个循环并将其提供给目录中的文件列表。
答案 1 :(得分:0)
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();
}