Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.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 SQLBuilder更新多行_Php_Sql_Google Fusion Tables_Sqlbuilder - Fatal编程技术网

使用PHP SQLBuilder更新多行

使用PHP SQLBuilder更新多行,php,sql,google-fusion-tables,sqlbuilder,Php,Sql,Google Fusion Tables,Sqlbuilder,我需要编辑一些不是我自己写的PHP,我已经完成了大部分工作,但是有一点我想不出正确的语法 基本上,我们从Google Fusion表中获取数据并用它填充一个表,一旦我们编辑了表中的数据,我们就可以将该信息更新为同一个表的生产版本。其中一个更新查询如下所示: if($table_row[12]=="New"){ $tableid1 = '1bsSleKDBdkhQZfn-oADx0tUtoOc32RqIyiX05Bo'; $insertresults = $ftclient->quer

我需要编辑一些不是我自己写的PHP,我已经完成了大部分工作,但是有一点我想不出正确的语法

基本上,我们从Google Fusion表中获取数据并用它填充一个表,一旦我们编辑了表中的数据,我们就可以将该信息更新为同一个表的生产版本。其中一个更新查询如下所示:

if($table_row[12]=="New"){
  $tableid1 = '1bsSleKDBdkhQZfn-oADx0tUtoOc32RqIyiX05Bo';
 $insertresults = $ftclient->query(SQLBuilder::insert($tableid1, 
    array('SUBURB'=> $table_row[1],
    'ROAD_NAME' => $table_row[2],
    'DESCRIPTION' => $table_row[3],
    'DIRECTION' => $table_row[4],
    'STATUS' => $table_row[5],
    'SITE_ID' => $table_row[6],
    'COMMON_NAME' => $table_row[7],
    'Lat' => $table_row[8],
    'Long' => $table_row[9],
        'OPERATING_DAY' => $table_row[10],
    'OPERATING_HOURS' => $table_row[11],
    'Version' => "current")));
  $insertresults = explode("\n", $insertresults);
  $rowid1 = $insertresults[1];
     $updateresults = $ftclient->query(SQLBuilder::update($tableid, 
    array('SUBURB'=> $table_row[1],
    'ROAD_NAME' => $table_row[2],
    'DESCRIPTION' => $table_row[3],
    'DIRECTION' => $table_row[4],
    'STATUS' => $table_row[5],
    'SITE_ID' => $table_row[6],
    'COMMON_NAME' => $table_row[7],
    'Lat' => $table_row[8],
    'Long' => $table_row[9],
        'OPERATING_DAY' => $table_row[10],
    'OPERATING_HOURS' => $table_row[11],
    'Version' => "current",
    'Edited_By' => $table_row[13],
    'Date_Edited' => $table_row[14]),$table_row[0]));
  $updateresults = explode("\n", $updateresults);
  $rowid2 = $updateresults[1]; 
  }

我需要做的是编写一个类似类型的SQLBuilder查询,当其中一个记录的郊区发生更改时,该查询将更新具有相同SITE_ID的每个记录(即,如果一个记录的郊区值从Sydney更改为Melbourne,则SITE_ID 1,如果一个记录的郊区值从Sydney更改为Melbourne,则必须更改具有SITE_ID 1的每个记录)。我不确定该如何在语法上表达这个短语,或者我将如何使用SQLBuilder编写查询。任何帮助都将不胜感激

SQLBuilder显然是一个本地包含的类。您需要查看它的文档或更新方法本身,以了解它希望如何编码where子句

这方面的SQL是:

"UPDATE tableid SET SUBURB = '{$table_row[1]}' WHERE SITE_ID = '{$table_row[6]}'"

如果您能够运行纯SQL,那么就可以了。否则,我需要查看类库。

Ah,它似乎是用于融合表的辅助类。你有没有可能在语法上帮我?作为表达我想要的内容的一种方式(如果郊区发生更改,则更新所有记录,其中SITE_ID等于更改行的SITE_ID)。。。我想不出怎么做。您如何识别最初希望更改其值的特定记录?显示了一个表,当您更新记录时,“版本”字段会自动更新为“更新”(与上面完全相同,除了if语句读取
if($table_row[12]=“update”)
,所以当我想要更改我相信的郊区时,这将是相同的(我的意思是,只要您更改郊区值,版本将更改为“更新”,以更新特定记录)。