如何在数据库中同时保存文本和图片

如何在数据库中同时保存文本和图片,第1张

数据库中保存不同类型的文件,和在数据库中保存是一样的。就是向数据库以byte形式存入

向数据库中保存不同类型的文件,和在数据库中保存是一样的。就是向数据库以byte形式存入

然后就是写入数据库,代码如下:

 

FileInfo fi = new FileInfo( txtFileNameText );// Replace with your file name

        if ( fiExists

        {

         byte[] bData = null;

            int nNewFileID = 0;

            // Read file data into buffer

            using ( FileStream fs = fiOpenRead() )

            {

                bData = new byte[fiLength];

                int nReadLength = fsRead( bData,0, (int)(fiLength) );

            }

            // Add file info into DB

            string strQuery = "INSERT INTO FileInfo "

                + " ( FileName, FullName, FileData ) "

                + " VALUES "

                + " ( @FileName, @FullName, @FileData ) "

                + " SELECT @@IDENTITY AS 'Identity'";

            SqlCommand sqlComm = new SqlCommand( strQuery, sqlConn );

            sqlCommParametersAdd( "@FileName", fiName );

            sqlCommParametersAdd( "@FullName", fiFullName );

            sqlCommParametersAdd( "@FileData", bData );

            // Get new file ID

            SqlDataReader sqlReader = sqlCommExecuteReader();

            if( sqlReaderRead() )

            {

                nNewFileID = intParse(sqlReaderGetValue(0)ToString());

            }

            sqlReaderClose();

            sqlCommDispose();

            if( nNewFileID > 0 )

            {

                // Add new item in list view

                ListViewItem itmNew = lsvFileInfoItemsAdd( fiName );

                itmNewTag = nNewFileID;

            }

        }

   4而读出的代码如下:

 // Get new file name

    string strFullName =

dlgFBSaveSelectedPath;

    if( strFullName[strFullNameLength - 1] != '//'

)

        strFullName

+= @"/";

    strFullName +=

lsvFileInfoSelectedItems[0]Text;

    string strQuery = "SELECT FileData FROM FileInfo

"

        +

" WHERE FileID = " + lsvFileInfoSelectedItems[0]TagToString();

    SqlDataAdapter

sqlDAdapter = new SqlDataAdapter(strQuery,sqlConn);

    DataSet

sqlRecordSet = new DataSet();

   byte[] bData = null;

    //Get file data from DB

    try

    {

        sqlDAdapterFill(

sqlRecordSet, "FileInfo" );

        foreach( DataRow dr in sqlRecordSetTables["FileInfo"]Rows)

        {

            if( dr["FileData"] != DBNullValue )

            bData

= ( byte[] )dr["FileData"];

        }

    }

    catch(SqlException sqlErr)

    {

        MessageBoxShow(

sqlErrMessage );

    }

    catch

    {

        MessageBoxShow(

"Failed to read data from DB!" );

    }

    sqlRecordSetDispose();

    sqlDAdapterDispose();

 

    if( bData != null )

    {

        // Save file

        FileInfo

fi = new FileInfo( strFullName

);

        if( !fiExists )

        {

            //Create the file

            using (FileStream fs = fiCreate())

            {

                fsWrite(

bData, 0, bDataLength);

            }

        }

        else

        {

            //Create the file

            using (FileStream fs =

fiOpenWrite())

            {

                fsWrite(

bData, 0, bDataLength);

            }

        }

    }

工具/材料:电脑、浏览器。

第一步,打开电脑进入桌面,打开软件进界面。

第二步,打开浏览器,打开需要保存的网页。

第三步,找到浏览器上方菜单栏更多工具-网页另存为点击进入。

第四步,弹出保存路径选择保存即可。

第五步,保存后找到文件打开即可。

就在前不久腾讯公司宣布它的用户已经突破九亿人。用户信息最久都已经保存了近二十年。为什么不论用户在何时何地打开软件都可以找到自己上传的信息,而且还能非常寻迅速的下载下来。

云存储技术也是这几年新兴起的一种快速便捷的网络存储技术。就像云彩一样,无论人去哪里,抬头都能看到空中的云彩。云存储就是实现了这样的功能,无论在任何地方都可以打开网络下载上传,而且速度很快。为了实现这个功能,公司在全球建立了二十四个分区和四十四个数据处理中心和一千多个节点。这一个中心有多大呢?几乎每个数据中心的规模都要超过十万台服务器。而用户的信息则放在数据节点上,只要用户在这个地域使用该软件,就会很快的为用户提供数据支持。

安全的信息保护功能,现代社会随着信息的爆炸式增长,人们几乎都在网络的覆盖之下,人们对个人信息的安全日益重视,生怕稍有疏忽就会导致个人隐私泄露。为了免除用户的后顾之忧保护用户信息安全,大部分信息都不会上传到服务器里。如果用户选择清理手机空间,这些信息也会被彻底删除。除非是主动上传到个人的空间或者是网盘,否则服务器不会接收存储你的个人信息。

而且,分布式存储也能起到很好的保密作用,除非经过用户的请求允许,不然是很难拿到用户的完整数据。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何在数据库中同时保存文本和图片

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情