被人忽视的sqlserver数据类型
SqlServer 中有一种数据类型是 Image ,用来存储图片大小不超过 2g 的图片,将图片转换为二进制!缺点是占用了很大的数据存储空间。但是现对于之前的存储物理路径来说读取图片和存储图片方便了很多。 那么图片在 MVC 程序中是如何存入数据库,并从数据库显示
SqlServer中有一种数据类型是Image,用来存储图片大小不超过2g的图片,将图片转换为二进制!缺点是占用了很大的数据存储空间。但是现对于之前的存储物理路径来说读取图片和存储图片方便了很多。
那么图片在MVC程序中是如何存入数据库,并从数据库显示到页面上的呢:
下面是一个简单的小例子:
private string sqlconn = "Data Source=;Initial Catalog=Image;Persist Security Info=True;User ID=sa;Password=123456"; // // GET: /UpDownload/ public ActionResult Index() { return View(); } [HttpPost] [ValidateInput(false)] public bool Upload(HttpPostedFileBase[] fileToUpload) { string path = ""; try { //TODDO:读取任何地方的路径 foreach (HttpPostedFileBase file in fileToUpload) { path = System.IO.Path.Combine(Server.MapPath("~/"), "uploadimage\\" + System.IO.Path.GetFileName("00" + file.FileName.Substring(file.FileName.LastIndexOf(".")))); //写入数据库 file.SaveAs(path); //将需要存储的图片读取为数据流 FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read); Byte[] imgbtye = new byte[fs.Length]; fs.Read(imgbtye, 0, Convert.ToInt32(fs.Length)); fs.Close(); using (SqlConnection conn = new SqlConnection(sqlconn)) { conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "insert into T_TeacherImage(TeacherImage) values(@imgfile)"; SqlParameter par = new SqlParameter("@imgfile", SqlDbType.Image); par.Value = imgbtye; cmd.Parameters.Add(par); cmd.ExecuteNonQuery(); } } return true; } catch { return false; } } #region 读取文件直接显示到视图上 public void Read() { byte[] MyData = new byte[0]; using (SqlConnection conn = new SqlConnection(sqlconn)) { conn.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = "select TeacherImage from T_TeacherImage where id='1'"; SqlDataReader sdr = cmd.ExecuteReader(); sdr.Read(); MyData = (byte[])sdr["TeacherImage"]; Response.ContentType = "image/gif"; Response.BinaryWrite(MyData); conn.Close(); } } #endregion
if (xhr.readyState == 4 && xhr.status == 200) { $('#personimg').attr("src", "http://localhost:55576/UpDownload/Read"); }
这个demo的实现环境是MVC,图片的获取路径是,当前服务主机地址/controller/action
怎么样,sqlserver为图片的读写,提供了很多方便之处吧!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics





The import steps are as follows: Copy the MDF file to SQL Server's data directory (usually C:\Program Files\Microsoft SQL Server\MSSQL\DATA). In SQL Server Management Studio (SSMS), open the database and select Attach. Click the Add button and select the MDF file. Confirm the database name and click the OK button.

For objects with the same name that already exist in the SQL Server database, the following steps need to be taken: Confirm the object type (table, view, stored procedure). IF NOT EXISTS can be used to skip creation if the object is empty. If the object has data, use a different name or modify the structure. Use DROP to delete existing objects (use caution, backup recommended). Check for schema changes to make sure there are no references to deleted or renamed objects.

To view the SQL Server port number: Open SSMS and connect to the server. Find the server name in Object Explorer, right-click it and select Properties. In the Connection tab, view the TCP Port field.

When the SQL Server service fails to start, here are some steps to resolve: Check the error log to determine the root cause. Make sure the service account has permission to start the service. Check whether dependency services are running. Disable antivirus software. Repair SQL Server installation. If the repair does not work, reinstall SQL Server.

If you accidentally delete a SQL Server database, you can take the following steps to recover: stop database activity; back up log files; check database logs; recovery options: restore from backup; restore from transaction log; use DBCC CHECKDB; use third-party tools. Please back up your database regularly and enable transaction logging to prevent data loss.

Facing lag, slow mobile data connection on iPhone? Typically, the strength of cellular internet on your phone depends on several factors such as region, cellular network type, roaming type, etc. There are some things you can do to get a faster, more reliable cellular Internet connection. Fix 1 – Force Restart iPhone Sometimes, force restarting your device just resets a lot of things, including the cellular connection. Step 1 – Just press the volume up key once and release. Next, press the Volume Down key and release it again. Step 2 – The next part of the process is to hold the button on the right side. Let the iPhone finish restarting. Enable cellular data and check network speed. Check again Fix 2 – Change data mode While 5G offers better network speeds, it works better when the signal is weaker

If the SQL Server installation fails, you can clean it up by following these steps: Uninstall SQL Server Delete registry keys Delete files and folders Restart the computer

SQL Server English installation can be changed to Chinese by following the following steps: download the corresponding language pack; stop the SQL Server service; install the language pack; change the instance language; change the user interface language; restart the application.
