python - 使用 Python 将 Pandas Dataframe 插入到 SQL-Server - Jupyter Notebook

标签 python sql-server pandas

到目前为止,我一直在从我的 SQL 服务器请求数据,主要使用 API、php 文件和使用 Python 中的 requests 模块。所以这是我的代码:

# importing the requests library
import requests

# api-endpoint
URL = "https://******.co.in/******/queryRandom.php"

# location given here
token= '***************'

query= 'SELECT userId,createdAt,.... FROM xyz WHERE date >= CURDATE() - INTERVAL 60 DAY'

# defining a params dict for the parameters to be sent to the API
PARAMS = {'token':token, 'query':query}

# sending get request and saving the response as response object
r = requests.post(url = URL, data = PARAMS)
df=pd.DataFrame(r.json())
df.head()

完成工作后,我形成了一个数据框,如下所示:

Sl.No.  date    nameofthepic    
1   26-08-2018  10-must-see-waterfalls-in-karnataka-8081714182d8    
2   26-08-2018  a-month-in-backpack-one-girl-one-goal-to-explore-the-himalayas-22813ee67e15 
3   26-08-2018  a-month-in-backpack-one-girl-one-goal-to-explore-the-himalayas-week-1-8d113ee673db  
4   26-08-2018  a-month-in-backpack-one-girl-one-goal-to-explore-the-himalayas-week-1-22b13ee67b87  
5   26-08-2018  backpacking-for-a-month-in-the-himalayas-week-1-30813ee674a6

现在使用类似的 requests 模块,有没有一种方法可以编写如下内容:INSERT INTO table_name... 并将数据帧上传到 SQL 表中。

我无法弄清楚的主要问题是:

i) 如何一次性将数据框列值上传到表中?

ii) 如果无法通过请求模块,是否有任何其他方法可以使用 Python 代码直接从 jupyter-notebook 将 Pandas 数据帧值上传到 SQL-server 表中?

最佳答案

要将此数据框导入 MySQL 表:

# Import dataframe into MySQL
import sqlalchemy
database_username = 'ENTER USERNAME'
database_password = 'ENTER USERNAME PASSWORD'
database_ip       = 'ENTER DATABASE IP'
database_name     = 'ENTER DATABASE NAME'
database_connection = sqlalchemy.create_engine('mysql+mysqlconnector://{0}:{1}@{2}/{3}'.format(database_username, database_password, database_ip, database_name))
frame.to_sql(con=database_connection, name='table_name_for_df', if_exists='append')

关于python - 使用 Python 将 Pandas Dataframe 插入到 SQL-Server - Jupyter Notebook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52070175/

相关文章:

python - 如何使用 Pandas 在 csv 中查找缺失的行?

c++ - 使用 CDynamicAccessor 连接到数据库时如何判断列是文本还是 ntext?

python - 将 Pandas 数据框拆分为子数据框列表的最快方法

python - H2OConnectionError : Unexpected HTTP error: HTTPConnectionPool Errno 111 Connection refused

python - Django 自定义登录从不验证为什么?

sql-server - 具有软删除列的表的唯一约束

sql-server - 将 datetimeoffset 数据类型与 jTDS 结合使用

python - 如何使用groupby计算vwap(成交量加权平均价格)并申请?

python - 如何关闭轮廓而不是边缘 - OpenCV

python - 尝试在networkx中绘制不可见节点,但得到黑色节点