簡體   English   中英

將數據庫 (AdventureWorks2019) 中的所有不同表導出為 CSV 格式作為相同路徑中的表名

[英]Export all the different tables from a database (AdventureWorks2019) into CSV format as table name in same path

此代碼用於將一個表一次從數據庫導出為 CSV 格式。

import pandas as pd
import pyodbc 

conn = pyodbc.connect('Driver={SQL Server};'
                      'Server=DESKTOP-0LA566U\SQLEXPRESS;'
                      'Database=AdventureWorksDW2019;'
                      'Trusted_Connection=yes;')

sql_query = pd.read_sql_query('''
                                select * from DimAccount'''
                              ,conn)
    
df = pd.DataFrame(sql_query)
df.to_csv (r'C:\Users\cdtpr\OneDrive\Desktop\connections\DimAccount.csv', index = False)

如上代碼是一次將一個表導出為 CSV 格式。 例如,我導出了 DimAccount。 所以我可以一次導出一個表,但是我怎樣才能一次導出所有 30 個表作為表名。 我想將 AdventureWorks2019 數據庫中的所有 30 個表作為表名導出為 CSV 格式。 請幫助我,我該怎么做。

首先,您應該使用此查詢獲取所有表的名稱:

SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES

然后寫一個for循環並替換你這段代碼中的表名

for table in tables:
    sql_query = pd.read_sql_query('''select * from {table}''',conn)
  
    df = pd.DataFrame(sql_query)
    df.to_csv (f'C:\Users\cdtpr\OneDrive\Desktop\connections\{table}.csv', index = False)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM