C 向資料庫寫二進位制以及讀出

2021-04-22 06:52:02 字數 1535 閱讀 7688

1.c#把檔案當作二進位製流寫進資料庫

sqlconnection myconnection = new sqlconnection(strsql);

myconnection.open();

sqlcommand mycommand = new sqlcommand();

fileinfo myfile = new fileinfo("d://**.*");

filestream mystream = myfile.openread();

byte mybyte = new byte[myfile.length];

mystream.read(mybyte, 0, convert.toint32(mystream.length));

strselect = "insert into df_xml(dt,xml) values(getdate(),@file)";

mycommand = new sqlcommand(strselect, myconnection);

sqlparameter myparam0 = new sqlparameter("@file", sqldbtype.binary);

myparam0.value = mybyte;

mycommand.parameters.add(myparam0);

mycommand.executenonquery();

mystream.close();

myconnection.dispose();

myconnection.close();

3.c#把二進位製流從進資料庫讀出並寫入檔案

string strsql = "data source=127.0.0.1;integrated security=sspi;initial catalog=mydatabase";

byte mybyte = null;

filestream myfs = new filestream("d://data.xml", filemode.createnew);

binarywriter writefile = new binarywriter(myfs);

string strselect = "select xml from df_xml where id=4";

sqlconnection myconnection = new sqlconnection(strsql);

myconnection.open();

sqlcommand mycommand = new sqlcommand(strselect, myconnection);

sqldatareader myreader = mycommand.executereader();

if (myreader.read())

myreader.close();

myconnection.close();

writefile.write(mybyte, 0, mybyte.length);

writefile.close();

myfs.close();

資料庫二進位制日誌

二進位制日誌記錄三種格式 基於 語句 記錄 statement,記錄語句,預設模式 mariadb 10.2.3 版本以下 日誌量較少 基於 行 記錄 row,記錄資料,日誌量較大,更加安全,建議使用的格式 混合模式 mixed,讓系統自行判定該基於哪種方式進行,預設模式 mariadb 10.2....

C 資料對齊以及二進位制輸出

資料對齊在底層開發中,是一種非常常用的手段。目的是為了在充分利用記憶體的前提下,能夠很方便的對記憶體進行管理。在使用stl進行程式設計的時候,當我們需要申請的記憶體足夠大,空間配置器會直接為容器分配連續的足夠大的記憶體空間。當記憶體比較小時,就需要使用次級空間配置器,在配置器已經維護的記憶體中分出一...

c 二進位制 負數 二進位制概念

我們平時認識的數字比如1 2 3 4等數字叫做十進位制數字,我們可以看懂,但是計算機無法運算,如果計算機要計算這些數字就得將這些數字轉換成計算機能讀懂的資料,計算只能讀懂二進位制數字,二進位制的數字有什麼特徵呢?二進位制就是由1和0組成的數字,那麼為什麼計算機要使用二進位制資料呢?下面作為了解。a ...