フォルダーから Excel ファイルを取得して SQL テーブルに書き込む Python スクリプトを作成しました。コードが機能するようになりましたが、ヘッダーを含むExcelファイルの最初の行を削除した場合のみです。私はPythonを初めて使用するので、これはおそらく単純なものですが、さまざまな手法を調べたところ、コードに挿入する方法がわかりませんでした. どんなアイデアでも大歓迎です!
# Import arcpy module
from xlrd import open_workbook ,cellname
import arcpy
import pyodbc as p
# Database Connection Info
server = "myServer"
database = "my_Tables"
connStr = ('DRIVER={SQL Server Native Client 10.0};SERVER=' + server + ';DATABASE=' + database + ';' + 'Trusted_Connection=yes')
# Assign path to Excel file
file_to_import = '\\\\Location\\Report_Test.xls'
# Assign column count
column_count=10
# Open entire workbook
book = open_workbook(file_to_import)
# Use first sheet
sheet = book.sheet_by_index(0)
# Open connection to SQL Server Table
conn = p.connect(connStr)
# Get cursor
cursor = conn.cursor()
# Assign the query string without values once, outside the loop
query = "INSERT INTO HED_EMPLOYEE_DATA (Company, Contact, Email, Name, Address, City, CentralCities, EnterpriseZones, NEZ, CDBG) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
# Iterate through each row
for row_index in range(sheet.nrows):
row_num = row_index
Company = sheet.cell(row_index,0).value
Contact = sheet.cell(row_index,1).value
Email = sheet.cell(row_index,2).value
Name = sheet.cell(row_index,3).value
Address = sheet.cell(row_index,4).value
City = sheet.cell(row_index,5).value
CentralCities = sheet.cell(row_index,6).value
EnterpriseZones = sheet.cell(row_index,7).value
NEZ = sheet.cell(row_index,8).value
CDBG = sheet.cell(row_index,9).value
values = (Company, Contact, Email, Name, Address, City, CentralCities, EnterpriseZones, NEZ, CDBG)
cursor.execute(query, values)
# Close cursor
cursor.close()
# Commit transaction
conn.commit()
# Close SQL server connection
conn.close()