當前位置: 首頁>>代碼示例>>PHP>>正文


PHP format::column_value_default方法代碼示例

本文整理匯總了PHP中format::column_value_default方法的典型用法代碼示例。如果您正苦於以下問題:PHP format::column_value_default方法的具體用法?PHP format::column_value_default怎麽用?PHP format::column_value_default使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在format的用法示例。


在下文中一共展示了format::column_value_default方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: get_data_row_update

 protected static function get_data_row_update($node_schema, $node_table, $old_data_row_columns, $old_data_row, $new_data_row_columns, $new_data_row, $changed_columns)
 {
     if (count($changed_columns) == 0) {
         throw new exception("empty changed_columns passed");
     }
     // what columns from new_data_row are different in old_data_row?
     // those are the ones to push through the update statement to make the database current
     $old_columns = array();
     $update_columns = array();
     foreach ($changed_columns as $changed_column) {
         if (!isset($changed_column['old_col'])) {
             $old_columns[] = 'NOTDEFINED';
         } else {
             $old_col_value = format::column_value_default($node_schema, $node_table, $changed_column['name'], $changed_column['old_col']);
             $old_columns[] = $changed_column['name'] . ' = ' . $old_col_value;
         }
         $update_col_name = format::get_quoted_column_name($changed_column['name']);
         $update_col_value = format::column_value_default($node_schema, $node_table, $changed_column['name'], $changed_column['new_col']);
         $update_columns[] = $update_col_name . ' = ' . $update_col_value;
     }
     // if the computed update_columns expression is < 5 chars, complain
     // if ( strlen($update_columns) < 5 ) {
     //   var_dump($update_columns);
     //   throw new exception(sprintf("%s.%s update_columns is < 5 chars, unexpected", $node_schema['name'], $node_table['name']));
     // }
     $old_columns = implode(', ', $old_columns);
     $update_columns = implode(', ', $update_columns);
     // use multiline comments here, so when data has newlines they can be preserved, but upgrade scripts don't catch on fire
     $sql = sprintf("UPDATE %s SET %s WHERE (%s); /* old values: %s */\n", format::get_fully_qualified_table_name($node_schema['name'], $node_table['name']), $update_columns, dbx::primary_key_expression(dbsteward::$new_database, $node_schema, $node_table, $new_data_row_columns, $new_data_row), $old_columns);
     return $sql;
 }
開發者ID:williammoran,項目名稱:DBSteward,代碼行數:31,代碼來源:mysql5_diff_tables.php


注:本文中的format::column_value_default方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。