Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在批处理模式下转义mysql上的空值?_Mysql_Dump_Batch Processing_Load Data Infile - Fatal编程技术网

如何在批处理模式下转义mysql上的空值?

如何在批处理模式下转义mysql上的空值?,mysql,dump,batch-processing,load-data-infile,Mysql,Dump,Batch Processing,Load Data Infile,为了转储和重新加载一些数据,我在批处理模式下(更具体地说,是非常静默的模式,'-ss')使用mysql客户机和一个select查询(-e'select…'),将中间结果定向到stdout。然后,使用加载数据填充处理结果 SELECT INTO OUTFILE不是一个选项,因为没有标准输出重定向(如果任何人有任何技巧来执行此操作,而不使用与查询结果大小成比例的内存,那么他们是非常受欢迎的) 现在,'-ss-e'的问题是NULL被输出为'NULL' 现在,假设数据集没有任何值'NULL'(strin

为了转储和重新加载一些数据,我在批处理模式下(更具体地说,是非常静默的模式,'-ss')使用mysql客户机和一个select查询(-e'select…'),将中间结果定向到stdout。然后,使用加载数据填充处理结果

SELECT INTO OUTFILE不是一个选项,因为没有标准输出重定向(如果任何人有任何技巧来执行此操作,而不使用与查询结果大小成比例的内存,那么他们是非常受欢迎的)

现在,'-ss-e'的问题是NULL被输出为'NULL'

现在,假设数据集没有任何值'NULL'(string),我可以做某种替换[用awk]。 或者,如果没有这个假设,我可以使用一个IFNULL()来使用一个极不可能的字符串,我将再次用[awk]替换它

我想知道的是:有没有办法直接从SQL进行“干净”转义?
显然,我无法使用IFNULL在输出中获取'\N',因为斜杠已转义。

您可以使用NVL函数将SQL中的某些内容从NULL转换为其他内容

这不起作用-它与IFNULL相同。问题是我需要输出中的'\N'作为NULL表示。现在,如果我插入一个斜杠,mysql客户端将输出一个“\\”,因为它(适当地)转义了它。