Upload file hình ảnh vào cơ sở dữ liệu SQL ASP.NET cung cấp một cách thức đơn giản để cập nhật hình ảnh vào cơ sở dữ liệu SQL Server.. Hình ảnh có thể được lưu trữ trong một cơ sở dữ li
Trang 1Upload file hình ảnh vào cơ sở dữ liệu SQL ASP.NET cung cấp một cách thức đơn
giản để cập nhật hình ảnh vào cơ sở dữ liệu SQL Server Hình ảnh có thể được lưu trữ trong một cơ
sở dữ liệu với thuộc tính của bảng là kiểu image
Bạn có thể sử dụng câu lệnh SQL sau để tạo một bảng cho phép lưu trữ hình ảnh:
CREATE TABLE [dbo].[_image](
[Img _id] [int] identity(1,1) CONSTRAINT [pk_image] PRIMARY KEY NOT
NULL,
[Img _name] [varchar] (30) not NULL,
[Img _type] [varchar] (30) NULL
)
ON [PRIMARY] Textimage_on [PRIMARY]
Trong đó,
Img_id: lưu trữ id của hình và là khóa chính của bảng
Img_name: lưu trữ tên của hình ảnh
Img_file: lưu trữ hình ảnh
Img_type: lưu trữ kiểu nội dung của hình ảnh
Bây giờ chúng ta tiến hành thực hiện các bước để upload hình vào cơ sở dữ liệu
1. Tạo một Webform để upload file hình
2 Upload hình vào cơ sở dữ liệu
Tạo Webform để tải file hình ảnh.
Bạn tạo form upload hình như sau:
<form enctype="multipart/form-data" id="form1" runat="server">
<div>
<table id="table1" border="0" cellpadding="0" style="border-collapse: collapse"
width="100%">
<tr>
<td width="125">
Image Name</td>
<td width="10">
</td>
<td>
<asp:TextBox ID="txtname"
runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>
File to Upload</td>
<td>
</td>
Trang 2<td>
<input id="fileimage" runat="server" type="file" /></td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
<asp:Button ID="btupload" runat="server" Text="Upload"
OnClick="btupload_Click" /></td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
</div>
</form>
Tải file hình vào cơ sở dữ liệu.
Khi người dùng nhấn vào nút Upload, sự kiện btupload_Click được gọi Bạn có thể
copy đoạn mã lệnh sau vào sự kiện btupload_Click
protected void btupload_Click(object sender, EventArgs e)
{
// tạo đối tượng Stream
System.IO.Stream img_strm = fileimage.PostedFile.InputStream;
// nhận kích thước của hình
int img_len = fileimage.PostedFile.ContentLength;
// nhận kiểu hình
string strType = fileimage.PostedFile.ContentType;
string strName = txtname.Text;
// tạo mảng kiểu byte của file đã được upload
byte[] imgData = new byte[img_len];
int n = img_strm.Read(imgData, 0, img_len);
int result = SaveToDB(strName, imgData, strType);
}
// Hàm SaveToDB()
int SaveToDB(string imgName, byte[] imgbin, string imgcontenttype)
{
OleDbConnection con = new
Trang 3
OleDbCommand cmd = new OleDbCommand("INSERT INTO _image values(?,?,?)", con);
OleDbParameter param0 = new
param0.Value = imgName;
cmd.Parameters.Add(param0);
OleDbParameter param1 = new OleDbParameter("@imgName",
param1.Value = imgbin;
cmd.Parameters.Add(param1);
OleDbParameter param2 = new OleDbParameter("@imgType",
param2.Value = imgcontenttype;
cmd.Parameters.Add(param2);
con.Open();
int numofwsAffected = cmd.ExecuteNonQuery();
con.Close();
return numofwsAffected;
}
Và bây giờ, file hình đã được lưu trữ trong cơ sở dữ liệu của bạn