下面这段代码是关于DB连接的,我从配置文件读取参数传到MSSQL这个函数去(ms),就报错ValueError:toomanyvaluestounpack(expected2)。而如果直接hardcode字符串在函数里(ms2),就能成...
下面这段代码是关于DB连接的,我从配置文件读取参数传到MSSQL这个函数去(ms),就报错 ValueError: too many values to unpack (expected 2)。而如果直接hardcode字符串在函数里(ms2),就能成功执行SQL语句。 这四个变量的实际值在ms和ms2中是完全一样的。不知道哪里出了问题……请高手帮忙看一下
# Database Connection
# MSSQL Connection
config=configparser.ConfigParser()
with open (PARAMETER_PATH,"r") as db_conn:
config.readfp(db_conn)
SOURCE_DB_HOST=config.get("SQL Server Connection Setting","host").strip('\r\n\t')
SOURCE_DB_USER=config.get("SQL Server Connection Setting","user").strip('\r\n\t')
SOURCE_DB_PWD=config.get("SQL Server Connection Setting","pwd").strip('\r\n\t')
SOURCE_DB_INSTANCE=config.get("SQL Server Connection Setting","db").strip('\r\n\t')
print(SOURCE_DB_HOST,SOURCE_DB_USER,SOURCE_DB_PWD,SOURCE_DB_INSTANCE)
ms = MSSQL(SOURCE_DB_HOST,SOURCE_DB_USER,SOURCE_DB_PWD,SOURCE_DB_INSTANCE)
print (ms)
ms2 = MSSQL("SHAITUTIL01\\SQLEXPRESS","PCLC0\\etang","^yhn7ujm","Private_DB_Edwin")
print (ms2)
reslist = ms2.ExecQuery("select top 1 * from test_1")
for i in reslist:
print(i)
reslist = ms.ExecQuery("select top 1 * from test_1")
for i in reslist:
print(i)
输出结果是这样的
"SHAITUTIL01\\SQLEXPRESS" "PCLC0\\etang" "^yhn7ujm" "Private_DB_Edwin"
(1000001, 'VIP10001', '??', 'MARGARETA', '?', '??MARGARETA?', 'F', 'Aug 22 2017 5:43PM', 34, datetime.datetime(2014, 4, 15, 17, 27), 'Y ', 1000788, 1000764, datetime.datetime(2014, 4, 15, 17, 34, 29, 67000), datetime.datetime(2014, 4, 15, 17, 34, 29, 67000))
下面就报错了
展开