檔案儲存到資料庫中

2021-04-23 02:02:20 字數 1929 閱讀 8616

最近開發乙個專案,涉及到將檔案儲存到資料庫中,在網上找到了例程,故貼出來,大家共享。

下面介紹一下使用c#來完成此項任務。

首先,介紹一下儲存檔案到資料庫中。將檔案儲存到資料庫中,實際上是將檔案轉換成二進位製流後,將二進位製流儲存到資料庫相應的字段中。在sql server中該字段的資料型別是image,在access中該字段的資料型別是ole物件。

//儲存檔案到sql server資料庫中

fileinfo fi=new fileinfo(filename);

filestream fs=fi.openread();

byte bytes=new byte[fs.length];

fs.read(bytes,0,convert.toint32(fs.length));

sqlcommand cm=new sqlcommand();

cm.connection=cn;

cm.commandtype=commandtype.text;

if(cn.state==0) cn.open();

cm.commandtext="insert into "+tablename+"("+fieldname+") values(@file)";

sqlparameter spfile=new sqlparameter("@file",sqldbtype.image);

spfile.value=bytes;

cm.parameters.add(spfile);

cm.executenonquery()

//儲存檔案到access資料庫中

fileinfo fi=new fileinfo(filename);

filestream fs=fi.openread();

byte bytes=new byte[fs.length];

fs.read(bytes,0,convert.toint32(fs.length));

oledbcommand cm=new oledbcommand();

cm.connection=cn;

cm.commandtype=commandtype.text;

if(cn.state==0) cn.open();

cm.commandtext="insert into "+tablename+"("+fieldname+") values(@file)";

oledbparameter spfile=new oledbparameter("@file",oledbtype.binary);

spfile.value=bytes;

cm.parameters.add(spfile);

cm.executenonquery()

**中的filename是檔案的完整名稱,tablename是要操作的表名稱,fieldname是要儲存檔案的欄位名稱。

兩段**實際上是一樣的,只是操作的資料庫不同,使用的物件不同而已。

接著,在說說將檔案從資料庫中讀取出來,只介紹從sql server中讀取。

sqldatareader dr=null;

sqlconnection objcn=new sqlconnection();

objcn.connectionstring="data source=(local);user id=sa;password=;initial catalog=test";

sqlcommand cm=new sqlcommand();

cm.connection=cn;

cm.commandtype=commandtype.text;

cm.commandtext="select "+fieldname+" from "+tablename+" where id=1";

dr=cm.executereader();

檔案儲存到資料庫中

最近專案中遇到新問題,問題描述如下 1 需求 應用後台每天定時讀取本地伺服器上傳的excel 並進行解析。2 背景 因為生產上部署兩台應用伺服器 負載均衡 excel放在nfs共享目錄中,這樣兩台伺服器都能讀取excel。為了防止excel被讀取兩次,所以 中每次讀完會加鎖,乙個應用讀完了,另乙個就...

將檔案儲存到資料庫中 stream

在程式設計中我們常常會遇到 將檔案儲存到資料庫中 這樣乙個問題,雖然這已不是什麼高難度的問題,但對於一些剛剛開始程式設計的朋友來說可能是有一點困難。其實,方法非常的簡單,只是可能由於這些朋友剛剛開始程式設計不久,一時沒有找到方法而已。下面介紹一下使用c 來完成此項任務。首先,介紹一下儲存檔案到資料庫...

C 將檔案儲存到資料庫中或者從資料庫中讀取檔案

在程式設計中我們常常會遇到 將檔案儲存到資料庫中 這樣乙個問題,雖然這已不是什麼高難度的問題,但對於一些剛剛開始程式設計的朋友來說可能是有一點困難。其實,方法非常的簡單,只是可能由於這些朋友剛剛開始程式設計不久,一時沒有找到方法而已。下面介紹一下使用c 來完成此項任務。首先,介紹一下儲存檔案到資料庫...