python - 列表中的Python转义字符导致问题
问题描述
下面是我用 python 编写的 SQOOP 代码的链接:
在其中一个部分中,我正在创建一个 sqoop 命令列表,并且该命令在 Linux 服务器中执行:
def sqoop_job(table_name):
#The last value which was loaded into the Data Hub is picked from the SQOOP Audit Table which holds the details from the last run.
lastvalue =last_value(table_name)
#Last Update Date is fetched from the source and this is also updated into the SQOOP Audit Table.
last_update_date = max_load_date(table_name)
#print(last_update_date)
init_query = create_query(table_name)
final_query = init_query+"'"+lastvalue+"'"+','+"'"+"DD/MM/YYYY HH24:MI:SS""'"+')'+' AND $CONDITIONS'
print(final_query)
cmd = ['sqoop', 'import', '-Dhadoop.security.credential.provider.path='+alias_provider, '--connect', oracle_url, '--username', username,'--password-alias', password_alias,'-m', '1', '--as-textfile','--target-dir', target_dir_incr+'/'+table_name, '--query',final_query]
#
问题是列表在查询中使用转义字符打印:
['sqoop', 'import', u'-Dhadoop.security.credential.provider.path=jceks://hdfs/tmp/symf.password.jceks', '--connect', u'jdbc:oracle:thin:@sl09.atradiusnet.com:1519/SYMF.atradiusnet.com', '--username', u'NLSMAY1', '--password-alias', u'symf.db.alias', '-m', '1', '--as-textfile', '--target-dir', u'/user/incoming_data/native_zone/symphony/incremental/TBOR_CURRENCY_EXCHANGE_RATES', '--query', u'"select ORCUY_CODE,ORCUY_CODE_BASE,TYP,EFFECT_TO_DAT,ORSUS_ID,EFFECT_FROM_DAT,AMT,LAST_UPDATE_DAT,LAST_UPDATE_SEQ ,current_timestamp, \'NLSMAY1\' from ORABUP0.TBOR_CURRENCY_EXCHANGE_RATES a where last_update_dat > to_timestamp(\'05/10/2018 15:13:05\',\'DD/MM/YYYY HH24:MI:SS\') AND $CONDITIONS']
现在查询部分在 oracle 数据库中使用转义字符执行,这在 oracle 中失败:
Executing SQL statement: "select BUPIY_ID,EFFECT_FROM_DAT,EFFECT_TO_DAT,BUSINESS_TYP,ORSUS_ID,LAST_UPDATE_DAT ,current_timestamp, \'NLSMAY1\' from ORABUP0.TBPO_POL_BUSINESS_TYPES a where last_update_dat > to_timestamp(\'12/10/2018 20:42:59\',\'DD/MM/YYYY HH24:MI:SS\') AND (1 = 0)
有人可以帮我解决这个问题吗?
解决方案
推荐阅读
- kotlin - 在 Kotlin 中访问枚举条目的成员
- .htaccess - 子域的 htaccess 不再使用
- facebook - 嵌入式 Facebook 群组提要未显示个人数据
- reactjs - 如何将graphQL查询结果转换为数据数组
- reactjs - 如何为使用基于路径的导入的模块提供类型定义?
- uwp - UWP Win2D以指定宽度绘制文本?可能吗?
- python - 使用 python 的 SimpleHTTPServer 运行一个简单的服务器
- c# - 将请求类类型传递给请求的类构造函数
- php - $MetaTags(false) 变量打破页面 (SilverStripe 3.7.1)
- java - Java多协议设计结构