Pythonのpyodbcを使用してSQL Serverにファイルをアップロードする方法


  1. ファイルをバイナリとして読み込み、データベースに挿入する方法:
import pyodbc
# データベース接続の設定
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=<サーバー名>;DATABASE=<データベース名>;UID=<ユーザー名>;PWD=<パスワード>')
# ファイルをバイナリとして読み込む
with open('<ファイルパス>', 'rb') as file:
    file_data = file.read()
# データベースにファイルを挿入するクエリを作成
query = "INSERT INTO <テーブル名> (file_column) VALUES (?)"
# クエリを実行
conn.execute(query, (pyodbc.Binary(file_data),))
conn.commit()
# 接続を閉じる
conn.close()
  1. ファイルの内容をテキストとして読み込み、データベースに挿入する方法:
import pyodbc
# データベース接続の設定
conn = pyodbc.connect('DRIVER={SQL Server};SERVER=<サーバー名>;DATABASE=<データベース名>;UID=<ユーザー名>;PWD=<パスワード>')
# ファイルをテキストとして読み込む
with open('<ファイルパス>', 'r') as file:
    file_data = file.read()
# データベースにファイルを挿入するクエリを作成
query = "INSERT INTO <テーブル名> (file_column) VALUES (?)"
# クエリを実行
conn.execute(query, (file_data,))
conn.commit()
# 接続を閉じる
conn.close()

これらの例では、pyodbcを使用してSQL Serverに接続し、ファイルをバイナリデータまたはテキストデータとして読み込み、データベースに挿入しています。ファイルのパス、データベースの接続情報、テーブル名、および列名を適切な値に置き換えて使用してください。