Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.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_Javascript_Jquery_Php - Fatal编程技术网

MySQL+;加载数据填充+;可变路径

MySQL+;加载数据填充+;可变路径,mysql,javascript,jquery,php,Mysql,Javascript,Jquery,Php,下面是我的代码,对于MySQL是错误的。 @Path不允许使用语法为“LOAD DATA INFILE”的变量,我不知道确切的Path+文件名 你知道如何解决这个问题吗 SET @Path = CONCAT(sysf_Get_Options('DRIVE'),sysf_Get_Options('PATH_SAP_FILE'),'277.txt'); LOAD DATA INFILE @Path INTO TABLE SAP_TMP LINES TERMINATED BY '\r\n'

下面是我的代码,对于MySQL是错误的。 @Path不允许使用语法为“LOAD DATA INFILE”的变量,我不知道确切的Path+文件名

你知道如何解决这个问题吗

SET @Path = CONCAT(sysf_Get_Options('DRIVE'),sysf_Get_Options('PATH_SAP_FILE'),'277.txt');

LOAD DATA INFILE @Path
  INTO TABLE SAP_TMP 
  LINES TERMINATED BY '\r\n'
  (@var1)
  SET txt = SP_INSERT_ROW_CONTRACTS(@var1)
;
说:

文件名必须以文本字符串形式给出

因此,不能对路径使用变量。在解析语句之前,必须将带引号的文本字符串编码到语句中。

表示:

文件名必须以文本字符串形式给出


因此,不能对路径使用变量。在解析语句之前,必须将带引号的文本字符串编码到语句中。

我们使用的解决方法是将源文件复制到临时文件中,并在填充行中引用临时文件。 比如:(对于windows,对于Linux,没有太大区别)

然后

LOAD DATA INFILE 'C:/temp/tempData.txt'

这样,您可以在sql脚本中硬编码路径。

我们使用的解决方法是将源文件复制到临时文件中,并在内嵌行中引用临时文件。 比如:(对于windows,对于Linux,没有太大区别)

然后

LOAD DATA INFILE 'C:/temp/tempData.txt'
这样,您可以在sql脚本中硬编码路径。

您可以使用此方法或+

var Upload=函数(文件){
this.file=文件;
};
$(“#csvfile”)。关于(“更改”,函数(e){
var file=$(this)[0]。文件[0];
var upload=新上传(文件);
upload.doUpload();
});
Upload.prototype.doUpload=函数(){
//从引用的元素ID检索FileList对象
var myFileList=document.getElementById('csvfile').files;
//从文件列表中获取第一个文件对象
var myFile=myFileList[0];
//设置包含文件三个属性的一些变量
var myFileName=myFile.name;
var myFileSize=myFile.size;
var myFileType=myFile.type;
//提醒我们刚刚收集的信息
警报(“文件名:+myFileName+”-FileSize:+myFileSize+“-FileType:+myFileType”);
//让我们上传完整的文件对象
//打开formData对象
var formData=new formData();
//将文件附加到formData对象
//注意第一个参数“file”,并记住它
append('我的文件',我的文件');
//创建XMLHttpRequest对象
var xhr=new XMLHttpRequest();
//使用POST方法打开我们的连接
open(“POST”,“uploadcsv.php”);
//发送文件
xhr.send(formData);
var fileFullpath=“'C:\\\\”+myFileName+“”;
var query=“将数据低优先级本地填充”+fileFullpath+”加载到表tb_名称字符集cp1256字段中,字段以“,”结尾,也可以用“,”结尾,行以“\r\n”结尾,忽略1行(字段1,字段2,字段3,字段4);”;
//将文件插入数据库
$.ajax({
类型:'POST',
url:'insertData.php',
async:false,//确保插入所有数据
数据:{'data':查询},
成功:功能(数据){
如果(数据){
$(“#状态”).append(
成功添加数据); }否则{ $(“#status”).append(
出现问题,无法编辑该行。”); } } }); //然后在插入后删除上载的文件 $.ajax({ 类型:“POST”, url:'deletecsv.php', 数据:{'file':myFileName}, 成功:功能(响应){ 警报(“删除”); }, 错误:函数(){ 警报(“无法删除csv文件”); } }); };

上载CSV文件:
您可以使用此方法或+

var Upload=函数(文件){
this.file=文件;
};
$(“#csvfile”)。关于(“更改”,函数(e){
var file=$(this)[0]。文件[0];
var upload=新上传(文件);
upload.doUpload();
});
Upload.prototype.doUpload=函数(){
//从引用的元素ID检索FileList对象
var myFileList=document.getElementById('csvfile').files;
//从文件列表中获取第一个文件对象
var myFile=myFileList[0];
//设置包含文件三个属性的一些变量
var myFileName=myFile.name;
var myFileSize=myFile.size;
var myFileType=myFile.type;
//提醒我们刚刚收集的信息
警报(“文件名:+myFileName+”-FileSize:+myFileSize+“-FileType:+myFileType”);
//让我们上传完整的文件对象
//打开formData对象
var formData=new formData();
//将文件附加到formData对象
//注意第一个参数“file”,并记住它
append('我的文件',我的文件');
//创建XMLHttpRequest对象
var xhr=new XMLHttpRequest();
//使用POST方法打开我们的连接
open(“POST”,“uploadcsv.php”);
//发送文件
xhr.send(formData);
var fileFullpath=“'C:\\\\”+myFileName+“”;
var query=“将数据低优先级本地填充”+fileFullpath+”加载到表tb_名称字符集cp1256字段中,字段以“,”结尾,也可以用“,”结尾,行以“\r\n”结尾,忽略1行(字段1,字段2,字段3,字段4);”;
//将文件插入数据库
$.ajax({
类型:'POST',
url:'insertData.php',
async:false,//确保插入所有数据
数据:{'data':查询},
成功:功能(数据){
如果(数据){
$(“#状态”).append(
成功添加数据); }否则{ $(“#status”).append(
出现问题,无法编辑该行。”); } } }); //然后在插入后删除上载的文件 $.ajax({ 类型:“POST”, url:'deletecsv.php', 数据:{'file':myFileName}, 成功:功能(响应){ 警报(“删除”); }, 错误:函数(){ 警报(“无法删除csv文件”); } }); };

上载CSV文件: