pandas.read_sql या तो उपयोग करें:
- एक sqlalchemy कनेक्शन ऑब्जेक्ट
engine.connect()
- एक डीबी एपीआई वस्तु केवल sqlite के लिए
raw_connection()
. का उपयोग करके , आपके पास एक डीबी एपीआई कनेक्शन ऑब्जेक्ट है, इसलिए पांडा का मानना है कि यह एक एसक्लाइट डेटाबेस से कनेक्शन है (जैसा कि हम आपकी त्रुटि में देखते हैं FROM sqlite_master WHERE
)
आपको उपयोग करने की आवश्यकता है con = engine.connect()
import sqlalchemy
import pandas
engine = sqlalchemy.create_engine('...')
with engine.connect() as conn:
print('sqla:', list(conn.execute('select * from users')))
df = pandas.read_sql('select * from users', conn)
print('df:', df)
df.to_sql('users2', conn)
print('sqla:', list(engine.connect().execute('select * from users2')))
आउटपुट:
sqla: [(1, 'toto'), (2, 'titi'), (3, 'tutu'), (4, 'tata')]
df: id name
0 1 toto
1 2 titi
2 3 tutu
3 4 tata
sqla: [(1, 'toto'), (2, 'titi'), (3, 'tutu'), (4, 'tata')]
उम्मीद के मुताबिक