Home

Advertisement

Previous Entry | Next Entry

http://www.flickr.com/photos/20958118@N0

Green Tree Python, originally uploaded by Mack2.

Bitmapをbyte[]でSQL Serverに保存されたファイルを*.jpgに戻します。

import clr
clr.AddReferenceByPartialName('System.Data')
clr.AddReferenceByPartialName('System.Drawing')

from System.Data import *
from System.Data.SqlClient import * 
from System.Drawing import *
from System.Drawing.Imaging import *
from System.IO import *

constr='Data Source=.; Database=Mama; Integrated Security=true;'

SQL=" select MSG.MessageCode,IMG.ImageData from TblImage IMG inner join TblMessage MSG on IMG.ImageId = MSG.MessageId inner join TblMenu MENU on MSG.MessageId = MENU.MenuId"

def execsql(sql):
  conn=SqlConnection(constr)
  conn.Open()
  cmd = conn.CreateCommand()
  cmd.CommandText = sql
  adp = SqlDataAdapter(sql,conn)
  ds = DataSet("Out")
  adp.Fill(ds)
  return ds

def main():
  sql = "select top 10 * from TblMenu"
  ds = execsql(SQL)
  for rs in ds.Tables[0].Rows:
    img  = Bitmap(MemoryStream(rs[1]))
    img.Save(str(rs[0])+".jpg" , ImageFormat.Jpeg )
    

if __name__ == '__main__':
  main()