本文目錄一覽:
- 1、如何將圖片儲存在MySQL數據庫里?
- 2、緯度和度量在MySQL數據庫中怎麼存儲
- 3、如何將圖片儲存在MySQL數據庫里
- 4、如何把文件存放在mysql數據庫中
- 5、怎麼將數據導入到mysql數據庫中
如何將圖片儲存在MySQL數據庫里?
解決方法一般有兩種:
1、將圖片保存的路徑存儲到數據庫;
2、將圖片以二進制數據流的形式直接寫入數據庫字段中。
以下為具體方法:
一、保存圖片的上傳路徑到數據庫:
string
uppath=””;//用於保存圖片上傳路徑
//獲取上傳圖片的文件名
string fileFullname =
this.FileUpload1.FileName;
//獲取圖片上傳的時間,以時間作為圖片的名字可以防止圖片重名
string
dataName =
DateTime.Now.ToString(“yyyyMMddhhmmss”);
//獲取圖片的文件名(不含擴展名)
string
fileName = fileFullname.Substring(fileFullname.LastIndexOf(“\\”) +
1);
//獲取圖片擴展名
string type =
fileFullname.Substring(fileFullname.LastIndexOf(“.”) +
1);
//判斷是否為要求的格式
if (type == “bmp” || type == “jpg” || type == “jpeg”
|| type == “gif” || type == “JPG” || type == “JPEG” || type == “BMP” || type ==
“GIF”)
{
//將圖片上傳到指定路徑的文件夾
this.FileUpload1.SaveAs(Server.MapPath(“~/upload”)
+ “\\” + dataName + “.” +
type);
//將路徑保存到變量,將該變量的值保存到數據庫相應字段即可
uppath
= “~/upload/” + dataName + “.” +
type;
}
二、將圖片以二進制數據流直接保存到數據庫:
引用如下命名空間:
using
System.Drawing;
using System.IO;
using
System.Data.SqlClient;
設計數據庫時,表中相應的字段類型為iamge
保存:
//圖片路徑
string
strPath = this.FileUpload1.PostedFile.FileName.ToString
();
//讀取圖片
FileStream fs = new System.IO.FileStream(strPath,
FileMode.Open, FileAccess.Read);
BinaryReader br = new
BinaryReader(fs);
byte[] photo =
br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
//存入
SqlConnection
myConn = new SqlConnection(“Data Source=.;Initial Catalog=stumanage;User
ID=sa;Password=123″);
string strComm = ” INSERT INTO
stuInfo(stuid,stuimage) VALUES(107,@photoBinary
)”;//操作數據庫語句根據需要修改
SqlCommand myComm = new SqlCommand(strComm,
myConn);
myComm.Parameters.Add(“@photoBinary”, SqlDbType.Binary,
photo.Length);
myComm.Parameters[“@photoBinary”].Value =
photo;
myConn.Open();
if (myComm.ExecuteNonQuery()
0)
{
this.Label1.Text =
“ok”;
}
myConn.Close();
讀取:
…連接數據庫字符串省略
mycon.Open();
SqlCommand
command = new
SqlCommand(“select stuimage from stuInfo where stuid=107”,
mycon);//查詢語句根據需要修改
byte[] image = (byte[])command.ExecuteScalar
();
//指定從數據庫讀取出來的圖片的保存路徑及名字
string strPath =
“~/Upload/zhangsan.JPG”;
string strPhotoPath =
Server.MapPath(strPath);
//按上面的路徑與名字保存圖片文件
BinaryWriter bw = new
BinaryWriter(File.Open(strPhotoPath,FileMode.OpenOrCreate));
bw.Write(image);
bw.Close();
//顯示圖片
this.Image1.ImageUrl
= strPath;
採用這兩種方式可以根據實際需求靈活選擇。
緯度和度量在MySQL數據庫中怎麼存儲
可以使用字符串varchar,然後取出數據之後將字符串轉化為double類型或float類型
可以存儲這些經/緯度數據,如波紋管 –
$arr = array(“13.692941, 100.750723”,
“13.70649,100.75405999999998”,
“13.71334,100.75428999999997”,
“13.72268,100.74638000000004”);
// serialize data before save to database, you should deserialized that when you will use this data after query.
$serializedArr = serialize($arr);
insert into geom (g) values (“{$serializedArr}”);
如何將圖片儲存在MySQL數據庫里
通常對用戶上傳的圖片需要保存到數據庫中。解決方法一般有兩種:一種是將圖片保存的路徑存儲到數據庫;另一種是將圖片以二進制數據流的形式直接寫入數據庫字段中。以下為具體方法:
一、保存圖片的上傳路徑到數據庫:
string uppath=””;//用於保存圖片上傳路徑
//獲取上傳圖片的文件名
string fileFullname = this.FileUpload1.FileName;
//獲取圖片上傳的時間,以時間作為圖片的名字可以防止圖片重名
string dataName = DateTime.Now.ToString(“yyyyMMddhhmmss”);
//獲取圖片的文件名(不含擴展名)
string fileName = fileFullname.Substring(fileFullname.LastIndexOf(“\\”) + 1);
//獲取圖片擴展名
string type = fileFullname.Substring(fileFullname.LastIndexOf(“.”) + 1);
//判斷是否為要求的格式
if (type == “bmp” || type == “jpg” || type == “jpeg” || type == “gif” || type == “JPG” || type == “JPEG” || type == “BMP” || type == “GIF”)
{
//將圖片上傳到指定路徑的文件夾
this.FileUpload1.SaveAs(Server.MapPath(“~/upload”) + “\\” + dataName + “.” + type);
//將路徑保存到變量,將該變量的值保存到數據庫相應字段即可
uppath = “~/upload/” + dataName + “.” + type;
}
二、將圖片以二進制數據流直接保存到數據庫:
引用如下命名空間:
using System.Drawing;
using System.IO;
using System.Data.SqlClient;
設計數據庫時,表中相應的字段類型為iamge
保存:
//圖片路徑
string strPath = this.FileUpload1.PostedFile.FileName.ToString ();
//讀取圖片
FileStream fs = new System.IO.FileStream(strPath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader(fs);
byte[] photo = br.ReadBytes((int)fs.Length);
br.Close();
fs.Close();
//存入
SqlConnection myConn = new SqlConnection(“Data Source=.;Initial Catalog=stumanage;User ID=sa;Password=123”);
string strComm = ” INSERT INTO stuInfo(stuid,stuimage) VALUES(107,@photoBinary )”;//操作數據庫語句根據需要修改
SqlCommand myComm = new SqlCommand(strComm, myConn);
myComm.Parameters.Add(“@photoBinary”, SqlDbType.Binary, photo.Length);
myComm.Parameters[“@photoBinary”].Value = photo;
myConn.Open();
if (myComm.ExecuteNonQuery() 0)
{
this.Label1.Text = “ok”;
}
myConn.Close();
讀取:
…連接數據庫字符串省略
mycon.Open();
SqlCommand command = new
SqlCommand(“select stuimage from stuInfo where stuid=107”, mycon);//查詢語句根據需要修改
byte[] image = (byte[])command.ExecuteScalar ();
//指定從數據庫讀取出來的圖片的保存路徑及名字
string strPath = “~/Upload/zhangsan.JPG”;
string strPhotoPath = Server.MapPath(strPath);
//按上面的路徑與名字保存圖片文件
BinaryWriter bw = new BinaryWriter(File.Open(strPhotoPath,FileMode.OpenOrCreate));
bw.Write(image);
bw.Close();
//顯示圖片
this.Image1.ImageUrl = strPath;
採用倆種方式可以根據實際需求靈活選擇。
如何把文件存放在mysql數據庫中
1、mysql如果使用myisam存儲引擎,數據庫文件類型就包括.frm、.myd、.myi,默認存放位置是c:\documents
and
settings\all
users\application
data\mysql\mysql
server
5.1\data
2、mysql如果使用innodb存儲引擎,mysql數據庫文件類型就包括.frm、ibdata1、.ibd,存放位置有兩個,
.frm文件默認存放位置是c:\documents
and
settings\all
users\application
data\mysql\mysql
server
5.1\data,
ibdata1、.ibd文件默認存放位置是mysql安裝目錄下的data文件夾
怎麼將數據導入到mysql數據庫中
步驟如下:
首先使用MySQL提供的命令行界面來導入數據庫,確保自己的電腦中安裝了MySQL數據庫,可以通過命令行來確認是否安裝了MySQL數據庫,當然,第一步是打開Mysql的數據庫服務,使用命令行來打開:如下圖所示:
啟動MySQL後,找到需要用到的腳本文件,也就是數據庫文件,首先得建立一個數據庫,這樣才可以導入腳本,如下圖所示:
在將腳本拷到本地磁盤的根目錄,這樣方便進入找到腳本,這裡以D盤來說明,使用test.sql:接着來到命令行,使用SOURCE d:/test.sql;來導入數據庫,先進入mysql,如下圖所示:
首先要在數據庫中建立好數據庫,然後導入腳本,所以先建立一個數據庫,不要腳本是不知道要往哪個數據庫中導入腳本的,如下圖所示:
然後就可以輸入導入.sql文件命令:
mysql USE 數據庫名;
mysql SOURCE d:/test.sql;
如下圖所示:
看到上面的畫面,說明mysql數據庫已經導入成功了。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/196219.html