数据库二进制数据流处理

上传人:飞*** 文档编号:47813700 上传时间:2018-07-05 格式:PDF 页数:4 大小:53.46KB
返回 下载 相关 举报
数据库二进制数据流处理_第1页
第1页 / 共4页
数据库二进制数据流处理_第2页
第2页 / 共4页
数据库二进制数据流处理_第3页
第3页 / 共4页
数据库二进制数据流处理_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《数据库二进制数据流处理》由会员分享,可在线阅读,更多相关《数据库二进制数据流处理(4页珍藏版)》请在金锄头文库上搜索。

1、数据流处理1. 从数据库读取数据二进制流创建文件 publicstaticstring LoadFile(string filePath, string fileName) try if(CreateFolder(System.Environment .CurrentDirectory + filePath) if (!System.IO.File .Exists(System.Environment .CurrentDirectory + filePath + “ + fileName) / 创建文件对象以创建文件的形式打开文件System.IO.FileStream fs = new Sy

2、stem.IO. FileStream (System. Environment .CurrentDirectory + filePath + “ + fileName, System.IO.FileMode.Create); byte Data = new byte 0; object cell = AppServer.YsServiceBaseClient.DN_YS_SelectDATACELL( “YS“, fileName); Data = (byte )cell; / 将数组的内容写进文件fs.Write(Data, 0, Data.Length); / 关闭文件fs.Close(

3、); catch /return System.IO.Path.GetFullPath(filePath + “ + fileName); return System. Environment .CurrentDirectory + filePath + “ + fileName; 2. 把文件以二进制流的方式写进数据库 publicstaticvoid SaveFilecell() OpenFileDialog openFileDialog = new OpenFileDialog (); /openFileDialog.InitialDirectory = Environment.GetF

4、olderPath(Environment.SpecialFolder.Personal); openFileDialog.InitialDirectory = System.Environment .CurrentDirectory + “data“ ; openFileDialog.Filter = “CELL文件(*.cll)|*.cll|XML文件 (*.xml)|*.xml|所有文件 (*.*)|*.*“; if (openFileDialog.ShowDialog() = DialogResult .OK) string FileName = openFileDialog.File

5、Name; System.IO.FileInfo myFile = new System.IO. FileInfo(FileName); System.IO.FileStream fs = new System.IO. FileStream (FileName, System.IO.FileMode.Open); int length = (int )fs.Length; byte fileData = new byte length; try fs.Read(fileData, 0, length); AppServer.YsServiceBaseClient.DN_YS_InsertDAT

6、ACELL( “YS“, myFile.Name, fileData); MessageBox .Show(“ 文件保存成功 “ , “ 系统信息 “ , MessageBoxButtons.OK, MessageBoxIcon.Information); catch ( Exception ex) throw new Exception ( “文件保存失败,原因: “ + ex.Message); finally fs.Close(); 3.数据流在数据库内部的使用表结构表数据转移数据库数据时Select data=data from dbo.a.DN_GY_DA TAINSERT INTO

7、 dbo.b.dn_gy_data(data) values data 这种方法不正确正确方法如下:ALTERPROCEDURE dbo. P_DN_GY_SelectSJJB ( Module VARCHAR( 20 ),- 模块Where VARCHAR( 1000 )- 条件/* EXEC P_DN_GY_SelectSJJB ZW, */ ) AS BEGIN SET NOCOUNT ON createtable #Temp ( ID INTIDENTITY( 1, 1)PRIMARYKEY, Module VARCHAR( 20 )NULL, Number VARCHAR( 100

8、)NULL, Data varbinary( max)NULL ) if Where = begin insertinto#Temp ( Module, Number , Data )selectModule, Number , Data from DN_GY_DATA where Module = Module end else begin exec ( insert into #Temp(Module,Number,Data) select Module,Number,Data from DN_GY_DATA where Module = Module and + Where) end d

9、eclare i int, j int, number varchar( 100 ), data varbinary( max) select i =1, j=count( 1)from #temp while i =j begin select number=number , data =data from #temp where id=i printinsert into DN_GY_DATA(Module,Number,Data) values(+Module +,+number +, print data print) set i =i+1 end droptable #Temp SET NOCOUNT OFF END

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号