Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/285.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/9/extjs/3.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
Php 不带一个字段的MySQL表导出_Php_Mysql - Fatal编程技术网

Php 不带一个字段的MySQL表导出

Php 不带一个字段的MySQL表导出,php,mysql,Php,Mysql,我是PHP新手,对它的语法和原理不太了解。 我有这样的代码: function exportFromTransbase($table_name) { //$odbc_query = "SELECT * FROM " . $table_name. " WHERE ((CDS_CTM subrange(248 cast integer) = 1) AND (CDS_LNG_ID = 16))"; $odbc_query = "SELECT * FROM " . $table_name. "";

我是PHP新手,对它的语法和原理不太了解。 我有这样的代码:

 function exportFromTransbase($table_name) {
 //$odbc_query = "SELECT * FROM " . $table_name. " WHERE ((CDS_CTM subrange(248 cast integer) = 1) AND (CDS_LNG_ID = 16))";
 $odbc_query = "SELECT * FROM " . $table_name. "";

 $data = odbc_exec($this->odbc_id, $odbc_query);
 odbc_longreadlen($data, 10485760);
 $oufile=fopen($table_name.".sql", 'w') or die("error writing file");

    $q1='INSERT INTO `' . substr($table_name, 4) . '` VALUES';
    fwrite($oufile, $q1);

 while($row = odbc_fetch_array($data))
 {

 foreach($row as $key => $value) {
 $keys[] = "`" . $key . "`";
 if ($value == ""){
    $value = 'NULL';
 $values[] = "" . mysql_real_escape_string($value) . "";
 }
 else{
    $values[] = "'" . mysql_real_escape_string($value) . "'";
 }
 //echo "\n \n ololo  ".$value;

 }


 $mysql_query = "\n (".implode(",", $values).")," ;
fwrite($oufile, $mysql_query);
 //mysql_query($mysql_query);
 set_time_limit(0);
 unset($keys);
 unset($values);
 unset($row);
 }
 $stat = fstat($oufile);
ftruncate($oufile, $stat['size']-1);
fseek($oufile, 0, SEEK_END);
  fwrite($oufile, ";".$r);
//} while ($r < 5 );
fclose($oufile);
    if ($mysql_query){
        print "Ýêñïîðò äàííûõ èç òàáëèöû " . $table_name . " çàâåðøåí!";
        //strtolower(substr($table_name, 4))
    }
 }
我需要自定义的内容和位置,以便导出除一个表字段外的所有表字段,例如称为Size的字段,我必须在db中插入该字段为null

如果很容易的话,如何将我的sql查询拆分为5000行?所以先插入5000行,然后再插入5000行

但首先我需要导出所有字段,除了一个…

您能使用吗

"select * from {table} where {sth} != {condition}"
然后您可以获取除一个之外的所有数据。根据你的情况摘录的。
同时,如果你想插入5000行,你可以一次读5000行然后插入。

据我所知,这是不可能的

您可以简单地使用:

SELECT field1, field2, field3, field4 FROM table

如果表中有更多字段,则只能使用*

在插入时,您可以设置一个忽略新表中不需要的字段的条件