當前位置:首頁 » 數據倉庫 » c存儲圖片到資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c存儲圖片到資料庫

發布時間: 2023-03-27 22:54:14

① 圖片如何存儲資料庫當中

頭條的文件就存在資料庫,可能他們取出來就是二進制吧,播放器可以解碼

② C#winform 中上傳圖片保存到資料庫中

就是2中方法:
1:上傳圖片的相對路徑到資料庫中相應欄位里,讀取顯示時,將控制項(假設用的是Image控制項)的ImageUrl屬性指向該相對路徑即可。

2:將圖片以二進制流的方式整體上傳到資料庫里,讀取顯示時,以二進制流的方式整體讀出。這種方法稍微麻煩一點,但保存的是圖片整體到資料庫里。

③ 如何將圖片存到資料庫中

保存圖片到資料庫中,有兩種方法:
1、一種是用大對象,即blob型,對c#不了解,但是java、c++中都有專門操作blob的對象,應該是以二進制流的方式走的。但是不建議採用這樣的管理方式,會加重資料庫、程序負擔,即使是手機開發也是如此。
2、圖片保存在本地,資料庫中用字元串存儲地址,這樣的方式比較好,也較易實現。但是缺乏安全性,把圖片重命名就行了,改個後綴,一般人就不會打開。還是不放心,用二進制加密下就好,這樣的程序代價仍然要比存在資料庫大對象中要好。

④ C# 如何將 圖片直接存入sql資料庫中


//把文件轉成二進制流出入資料庫
privatevoidbutton2_Click(objectsender,EventArgse)
{
FileStreamfs=newFileStream(textBox1.Text,FileMode.Open);
BinaryReaderbr=newBinaryReader(fs);
Byte[]byData=br.ReadBytes((int)fs.Length);
fs.Close();
拿螞鋒stringconn="server=.;database=testDB;Uid=sa;Pwd=sa";
SqlConnectionmyconn=newSqlConnection(conn);
myconn.Open();
stringstr="insertintopro_table(pro_name,pro_file)values('測試文件',@file)";
SqlCommandmycomm=newSqlCommand(str,myconn);
mycomm.Parameters.Add("@file",SqlDbType.Binary,byData.Length);
mycomm.Parameters["@file"].Value=byData;
mycomm.ExecuteNonQuery();
myconn.Close();
}

//從資料庫中把二進制流讀出寫入還原成文件
privatevoidbutton4_Click(objectsender,EventArgse)
{
stringconn="server=.;database=testDB;Uid=sa;Pwd=sa";
stringstr="selectpro_filefrompro_tablewherepro_name='測試文件'";
SqlConnectionmyconn=newSqlConnection(conn);
物此SqlDataAdaptersda=newSqlDataAdapter(str,conn);
DataSetmyds=newDataSet();
myconn.Open();
sda.Fill(myds);
myconn.Close();
Byte[]Files=(Byte[])myds.Tables[0].Rows[0]["pro_file"];
BinaryWriterbw=newBinaryWriter(File.Open("D:\2.rdlc",FileMode.OpenOrCreate));
bw.Write(Files);
bw.Close();

消晌}

⑤ vc怎麼把圖片讀入SQL資料庫啊

比較復雜,看我的筆記。
根本方法是定義圖片VARIANT變數,其類型為VT_ARRAY|VT_UI1。此時VARIANT的物褲首值為SAFEARRAY.將圖片載入SAFEARRAY中。便可以存入圖片了。可以存儲任何格式 的圖片;
void CDataBase16Dlg::OnBnClickedAddNew()
{

CString filepath;
CFileDialog filedialog(TRUE);
if(filedialog.DoModal()==IDOK)
{
filepath=filedialog.GetPathName();

}
CFile file;
file.Open(filepath,CFile::modeRead);
SAFEARRAY *psa; //SAFEARRAY是variant變數的參數之一。
SAFEARRAYBOUND bound[1]; //SAFEARRAYBOUND為SAFEARRAY結構成員之一。
bound[0].lLbound=0; //代表數組起始索引,一般為 0;
bound[0].cElements=file.GetLength(); //代表元素個數,即圖片的大小。以位元組為單位
psa=SafeArrayCreate(VT_UI1,1,bound); //創建SAFEARRAY,中間參數代表創建的是一個一維數組;

BYTE *filebuffer=new BYTE[file.GetLength()+1];
file.Read(filebuffer,file.GetLength()); //將圖片文件讀入內存。
for(long index=0;index<file.GetLength();index++)
SafeArrayPutElement(psa,&index,&filebuffer[index]); //將圖片的每一位元組放入SAFEAWWAY中。

VARIANT vt;
vt.vt = VT_ARRAY|VT_UI1;
vt.parray=psa;

m_recordset->GetFields()->GetItem(_variant_t("肖像"純團))->AppendChunk(vt);//添加圖片。
m_recordset->Update();
}

至於讀取,你沒問我也就不答了,比較長罩數。

⑥ 圖片如何存入資料庫

1、新建一個資料庫,資料庫名為Image,表名為image。並為表添加ID,tupian兩個列。

⑦ 在C#中如何將一張圖片存入資料庫中

LZ,你想將圖片保存到資料庫中,有2中方法
1:
最簡單的,存圖片地址,asp.net
中是
~\圖片目錄
2:
將整張圖片保存到資料庫中(沖氏碼將圖片的副本保留到核高資料庫),樓上的幾個也說了,方法是可行的,但我就不知道
以散哪流的方式讀取後,能否還原圖片,在MSsql
中沒試過,但在Oracle
中,有Blog和Clog(應該沒記錯),可以保存任何數據(任何文件都可以保存),你試試

⑧ C#怎麼將圖片保存到SQL資料庫

this.pictureBox1.Image
=
Image.FromStream(this.openFileDialog1.OpenFile());
//獲取當前圖片的路徑
string
path
=
openFileDialog1.FileName.ToString();
//將制定路徑的圖片添加到FileStream類中
FileStream
fs
=
new
FileStream(path,
FileMode.Open,
FileAccess.Read);
//通過FileStream對象實例化BinaryReader對象
BinaryReader
br
=
new
BinaryReader(fs);
//通過BinaryReader類對象的ReadBytes()方法將FileStream類對象轉化為二進制數組
byte[]
imgBytesIn
=
br.ReadBytes(Convert.ToInt32(fs.Length));第二步:
//將圖片添加到資料庫中
string
sql="insert
into
pic
values(@pic)";
SqlParameter[]
param
=
new
SqlParameter[]
{
new
SqlParameter("@pic",
imgBytesIn)
};
DBHelper.GetExecuteQuery(sql,
param);第三步:
//將圖片從資料庫中取出
string
sql="select
*
from
pic
where
id=0";
SqlDataReader
reader
=
DBHelper.GetExecuteReader(sql,
null);
MemoryStream
mss
=
null;

⑨ c#如何將圖片保存到mysql資料庫,再讀取出來

直接將圖片以二進制流的方式寫入到mysql資料庫中,由於數據量大,必然會導致伺服器的資料庫負載很大

我的建議:採取將圖片存儲在物理磁碟將相對路徑存儲在資料庫中這樣會減小資料庫負載

附上 "上傳圖片" 代碼:

///<summary>
///上傳圖片
///</summary>
升森巧///<paramname="files">文件框名稱</param>
///<paramname="paths">上傳文件路徑,url</param>
///<paramname="fmax">文件的最大值,單位為位元組</param>
///<paramname="ftype">類型:1表示圖片;0表示所有文件</param>
春沖///<returns></returns>
publicstaticstringupfiles(System.Web.UI.HtmlControls.HtmlInputFilefiles,stringpaths,longfmax,stringftype)
{

//files文件上傳組件的名稱;paths要上傳到的目錄;fmax是上傳文件最大值;ftype是上傳文件的類型
//默認上傳文件最大值100k,文件類型為所有文件
//1為圖片jpgorgif;0為所有文件
//如果文件大於設定值,返回代碼0
//如果文件類型錯誤,返回代碼1
//初始化
longfileMax=100000;
stringfileType="0";
stringfileTypet="";

fileMax=fmax;
fileType=ftype;if(files.PostedFile.ContentLength>fileMax)
吵鍵{
return"0";
//返回錯誤代碼,結束程序
}

fileTypet=System.IO.Path.GetExtension(files.PostedFile.FileName).ToLower();
if(fileType=="1")
{
if(fileTypet!=".jpg"&&fileTypet!=".jpeg"&&fileTypet!=".gif")
{
return"1";
//返回錯誤代碼,結束程序
}
}
stringdestdir=System.Web.HttpContext.Current.Server.MapPath(paths);
stringfilename=CFun.RandomWord()+fileTypet;
stringdestpath=System.IO.Path.Combine(destdir,filename);

//檢查是否有名稱重復,如果重復就在前面加從0開始的數字
inti=0;
stringtempfilename=filename;
while(System.IO.File.Exists(destpath))
{
//有重復
tempfilename=i.ToString()+filename;
destpath=System.IO.Path.Combine(destdir,tempfilename);
i=i+1;
}


//沒有重復,保存文件
files.PostedFile.SaveAs(destpath);
//返迴文件名稱
returntempfilename;
}

⑩ 資料庫怎麼儲存圖片

資料庫存儲圖片,其實是存儲圖片在伺服器上的路徑或圖片的絕對地址 。它是一個字元串,所以資料庫欄位的類型可使用varchar【可變的,長度不超過255】。在前台調用時,需要將路徑放置在img標簽的src屬性中,即可顯示圖片