我正在尝试向表中添加一列(理想情况下不使用数据框),其默认值为'MONTHLY'
import pyodbc
server = '<server>.database.windows.net'
database = '<database>'
username = '<username>'
password = '<password>'
driver= '{ODBC Driver 17 for SQL Server}'
cnxn = pyodbc.connect('DRIVER='+driver+';SERVER='+server+';PORT=1433;DATABASE='+database+';UID='+username+';PWD='+ password)
cursor = cnxn.cursor()
cursor.execute("SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName FROM [SalesLT].[ProductCategory] pc JOIN [SalesLT].[Product] p ON pc.productcategoryid = p.productcategoryid")
row = cursor.fetchone()
while row:
print (str(row[0]) + " " + str(row[1]))
row = cursor.fetchone()
这给我一个错误:
SQL语句中的错误:ParseException:输入'DEFAULT'不匹配 期待')'(第1行,pos 88)
无论sql语句中是否有ALTER TABLE aa_monthly ADD COLUMNS (Monthly_or_Weekly_Indicator string NOT NULL FIRST DEFAULT ('MONTHLY'))
,我都会遇到相同的错误。
答案 0 :(得分:0)
希望这会有所帮助
ALTER TABLE aa_monthly
ADD Monthly_or_Weekly_Indicator string NOT NULL DEFAULT 'MONTHLY'
答案 1 :(得分:0)
在Hive中,您cannot add a default value for a column令人遗憾。
column change命令将只修改Hive的元数据,而不会修改数据
答案 2 :(得分:0)
有多种方法
1.13.1