python - 将日期从 Excel 导入 Microsoft SQL Server Management Studio
问题描述
希望每个人都很好,并保持安全。
我正在使用 Python 将 Excel 文件上传到 SQL。我有三个字段:CarNumber nvarchar(50)、Status nvarchar(50) 和 DisassemblyStart 日期。
我在导入 DisassemblyStart 字段日期时遇到问题。使用 Python 的连接和事务是成功的。
但是,即使 Excel 文件中填充了日期,我也会得到零。我试过切换到 nvarchar(50)、日期和日期时间,看看我是否至少能得到一个字符串,什么也没有。我将 Excel 文件保存为 CSV 和 TXT 并尝试上传它,但仍然是零。我在 Excel 中的每个日期都添加了 0.001(以添加人工时间),以防万一,但什么也没发生。还是零。我敢肯定,杂草太多是一个重大的疏忽。我需要帮助。
Excel 文件具有三个字段列。
这是 Python 代码:
import pandas as pd
import pyodbc
# Import CSV
data = pd.read_csv (r'PATH_TO_CSV\\\XXX.csv')
df = pd.DataFrame(data,columns= ['CarNumber','Status','DisassemblyStart'])
df = df.fillna(value=0)
# Connect to SQL Server
conn = pyodbc.connect("Driver={SQL Server};Server=SERVERNAME,PORT ;Database=DATABASENAME;Uid=USER;Pwd=PW;")
cursor = conn.cursor()
# Create Table
cursor.execute ('DROP TABLE OPS.dbo.TABLE')
cursor.execute ('CREATE TABLE OPS.dbo.TABLE (CarNumber nvarchar(50),Status nvarchar(50), DisassemblyStart date)')
# Insert READ_CSV INTO TABLE
for row in df.itertuples():
cursor.execute('INSERT INTO OPS.dbo.TABLE (CarNumber,Status,DisassemblyStart) VALUES (?,?,Convert(datetime,?,23))',row.CarNumber,row.Status,row.DisassemblyStart)
conn.commit()
conn.close()
帮助将不胜感激。
谢谢你,注意安全
大卫
解决方案
推荐阅读
- typescript - 当我知道 `this` 是动态的时,我可以使用 Typescript 强制使用经典函数作为参数而不是箭头函数吗?
- java - 如何使用java从字符位置获取文件中的行号
- javascript - 使用javascript循环更改单词最后一个字符的颜色
- vue.js - 如何将数组参数传递给 url VueJs
- mongodb - 有没有办法最小化 $graphlookup 输出?
- c# - Json 到 C# 类的转换
- macos - PB 前缀在许多 Mac API 中代表什么?
- r - 如何从我的 R 环境中删除所有对象,但名称不同的两个对象除外
- regex - 有没有办法检查字符串中允许的最大十六进制值?
- javascript - 未捕获的类型错误:无法将属性“setCollisionByExclusion”设置为 null