Update of /cvsroot/easymod/sql_parser/root/includes/sql
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28672/root/includes/sql
Modified Files:
sql_parser.php
Log Message:
Fixed a minor bug in the ALTER TABLE parser.
Index: sql_parser.php
===================================================================
RCS file: /cvsroot/easymod/sql_parser/root/includes/sql/sql_parser.php,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** sql_parser.php 26 Sep 2005 09:59:13 -0000 1.3
--- sql_parser.php 29 Sep 2005 19:32:21 -0000 1.4
***************
*** 431,439 ****
return true;
}
- if( preg_match('#msaccess#i', $this->sql_layer) )
- {
- $builder_name = 'msaccess';
- return true;
- }
$builder_name = $this->sql_layer;
return false;
--- 431,434 ----
***************
*** 448,453 ****
* @param bool TRUE to show the current table name in the message.
* @param bool TRUE to translate table prefixes in the message.
*/
! function format_message($message, $count = false, $show_table_name = false, $translate_prefix = true)
{
global $lang;
--- 443,449 ----
* @param bool TRUE to show the current table name in the message.
* @param bool TRUE to translate table prefixes in the message.
+ * @return array Associative array with the following elements: message, stmt_number and table_name
*/
! function format_message($message, $stmt_number = false, $show_table_name = false, $translate_prefix = true)
{
global $lang;
***************
*** 458,480 ****
$message = str_replace($this->table_prefix, $this->phpbb_prefix, $message);
}
// Append additional information?
! if( $count !== false )
{
! $message .= sprintf($lang['SQL_in_statement'], $count);
}
if( $show_table_name )
{
! $table_name = ( $translate_prefix && $this->table_prefix != $this->phpbb_prefix ? str_replace($this->table_prefix, $this->phpbb_prefix, $this->sql_data['table_name']) : $this->sql_data['table_name'] );
! $message .= sprintf($lang['SQL_in_table_name'], $table_name);
}
! return $message;
}
! function format_warning($message, $count = false, $show_table_name = false, $translate_prefix = true)
{
! $this->warnings[] = $this->format_message($message, $count, $show_table_name, $translate_prefix);
}
! function format_error($message, $count = false, $show_table_name = false, $translate_prefix = true)
{
! $this->error_message = $this->format_message($message, $count, $show_table_name, $translate_prefix);
}
--- 454,485 ----
$message = str_replace($this->table_prefix, $this->phpbb_prefix, $message);
}
+ else
+ {
+ $translate_prefix = false;
+ }
+
+ $result = array();
+
// Append additional information?
! if( $stmt_number !== false )
{
! $result['stmt_number'] = $stmt_number;
! $message .= sprintf($lang['SQL_in_statement'], $stmt_number);
}
if( $show_table_name )
{
! $result['table_name'] = ( $translate_prefix ? str_replace($this->table_prefix, $this->phpbb_prefix, $this->sql_data['table_name']) : $this->sql_data['table_name'] );
! $message .= sprintf($lang['SQL_in_table_name'], $result['table_name']);
}
! $result['message'] = $message;
! return $result;
}
! function format_warning($message, $stmt_number = false, $show_table_name = false, $translate_prefix = true)
{
! $this->warnings[] = $this->format_message($message, $stmt_number, $show_table_name, $translate_prefix);
}
! function format_error($message, $stmt_number = false, $show_table_name = false, $translate_prefix = true)
{
! $this->error_message = $this->format_message($message, $stmt_number, $show_table_name, $translate_prefix);
}
***************
*** 1368,1372 ****
return false;
}
! if( isset($match[2]) && $match[2] == 'COLUMN' )
{
$alter_statement = substr($alter_statement, strlen($match[0]));
--- 1373,1377 ----
return false;
}
! if( isset($match[2]) && strtoupper($match[2]) == 'COLUMN' )
{
$alter_statement = substr($alter_statement, strlen($match[0]));
|