<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 處理圖像 > 原文: [http://zetcode.com/db/sqliteruimg/](http://zetcode.com/db/sqliteruimg/) 在 SQLite Ruby 教程的這一章中,我們將使用圖像文件。 請注意,有些人反對將圖像放入數據庫。 在這里,我們只展示如何做。 我們不討論是否將圖像保存在數據庫中的技術問題。 ```ruby sqlite> CREATE TABLE Images(Id INTEGER PRIMARY KEY, Data BLOB); ``` 對于此示例,我們創建一個名為`Images`的新表。 對于圖像,我們使用`BLOB`數據類型,代表二進制大對象。 ## 插入圖像 在第一個示例中,我們將圖像插入 SQLite 數據庫。 ```ruby #!/usr/bin/ruby require 'sqlite3' begin fin = File.open "woman.jpg" , "rb" img = fin.read rescue SystemCallError => e puts e ensure fin.close if fin end begin db = SQLite3::Database.open 'test.db' blob = SQLite3::Blob.new img db.execute "INSERT INTO Images VALUES(1, ?)", blob rescue SQLite3::Exception => e puts "Exception occurred" puts e ensure db.close if db end ``` 我們從當前工作目錄中讀取圖像,并將其寫入 SQLite `test.db`數據庫的`Images`表中。 ```ruby fin = File.open "woman.jpg" , "rb" img = fin.read ``` 我們打開并閱讀 JPG 圖像。 `read`方法以字符串形式返回數據。 ```ruby blob = SQLite3::Blob.new img ``` 我們創建`SQLite3::Blob`類的實例。 它用于處理二進制數據。 ```ruby db.execute "INSERT INTO Images VALUES(1, ?)", blob ``` 圖像被寫入數據庫。 ## 讀取圖像 在本節中,我們將執行相反的操作。 我們將從數據庫表中讀取圖像。 ```ruby #!/usr/bin/ruby require 'sqlite3' begin db = SQLite3::Database.open 'test.db' data = db.get_first_value "SELECT Data FROM Images LIMIT 1" f = File.new "woman2.jpg", "wb" f.write data rescue SQLite3::Exception, SystemCallError => e puts "Exception occurred" puts e ensure f.close if f db.close if db end ``` 我們從圖像表中讀取圖像數據,并將其寫入另一個文件,我們將其稱為`woman2.jpg`。 ```ruby data = db.get_first_value "SELECT Data FROM Images LIMIT 1" ``` 該行從表中選擇圖像數據。 ```ruby f = File.new "woman2.jpg", "wb" f.write data ``` 我們打開一個新的圖像文件,并將檢索到的數據寫入該文件。 然后我們關閉文件。 SQLite Ruby 教程的這一部分專門用于讀取和寫入圖像。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看