PythonによるSteemSQLの利用方法

in #japanese5 years ago (edited)

こんにちは、 @shogoです。

本日はPythonによるSteemSQLの利用方法について書いてみます。

日本語情報はなく、ほんの少し大変なので参考になりましたら幸いです。

SteemSQL


steemsql.PNG

以前は無料で使えたのですが、現在はサブスクリプションモデルに移行しました。

10SBD/月 OR 1SBD/日 を選ぶことができます。


steemsql1.PNG

登録方法は簡単で、 @steemsqlにSBDを送るだけです。

メモは必要ありません。


steemsql2.PNG


steemsql3.PNG

送信後、すぐに0.001SBDが返ってきます。

メモに、サーバー名、データベース名、ユーザーID、パスワードが記載されているので保存しておきます。


Inkedsteemsql5_LI.jpg

準備

① ODBCドライバーをインストールします。

https://docs.microsoft.com/ja-jp/sql/connect/odbc/download-odbc-driver-for-sql-server?view=sql-server-2017

② pypyodbcを次のコマンドでInstallします。

pip install pypyodbc



以下はこちらに記載されている、SteemSQLに接続するサンプルコードです。

サーバー名、データベース名、ユーザーID、パスワードを送られてきたメモ通りに入力します。

connect.py

import pypyodbc

connection = pypyodbc.connect('Driver={ODBC Driver 13 for SQL Server};'
                              'Server=************;'
                              'Database=**********;'
                              'uid=***************;pwd=****************')

cursor = connection.cursor()
SQLCommand = ("SQLクエリを入力する(Microsoft SQL)”)

cursor.execute(SQLCommand)

connection.close()



次は、実際にクエリを書いてみます。

example.py

import pypyodbc
import pprint

connection = pypyodbc.connect('Driver={ODBC Driver 13 for SQL Server};'
                              'Server=***************;'
                              'Database=************;'
                              'uid=******************;pwd=*******************')

cursor = connection.cursor()
SQLCommand = ("SELECT author, permlink FROM TxVotes WHERE voter = 'shogo';")

result = cursor.execute(SQLCommand)
result = result.fetchmany(100)
pprint.pprint(result)

connection.close()

実行結果


result.PNG


いかがでしたでしょうか??

細かいところは端折りましたが、分からない部分が御座いましたらご連絡ください!

Steem On!, @shogo

Sort:  

なるほど!
ありがとうショウゴくん<3
まだまだですけど、めっちゃ参考になるの

参考になったら嬉しいです!!
僕もまだまだですが、勉強します :)

ありがとうございます!
参考になります!

ちなみに、Steem Trackedというのも気になっているのですが、リンクが切れてしまっているようです^^;
https://steemit.com/@steemtracked

ありがとうございます :)
Steem Trackedは初めて知りました!
少し触ってみたかったです :D

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.034
BTC 63173.85
ETH 3147.56
USDT 1.00
SBD 3.87