@@ -2630,7 +2630,9 @@ private function execute_show_databases_statement( WP_Parser_Node $node ): void
26302630 sprintf (
26312631 'SELECT SCHEMA_NAME AS Database
26322632 FROM (
2633- SELECT IIF(SCHEMA_NAME = ?, ?, SCHEMA_NAME) AS SCHEMA_NAME FROM %s ORDER BY SCHEMA_NAME
2633+ SELECT CASE WHEN SCHEMA_NAME = ? THEN ? ELSE SCHEMA_NAME END AS SCHEMA_NAME
2634+ FROM %s
2635+ ORDER BY SCHEMA_NAME
26342636 )%s ' ,
26352637 $ this ->quote_sqlite_identifier ( $ schemata_table ),
26362638 isset ( $ condition ) ? ( ' WHERE TRUE ' . $ condition ) : ''
@@ -4372,7 +4374,7 @@ public function translate_select_item( WP_Parser_Node $node ): string {
43724374 * SELECT *, `t`.*, `t`.`table_schema` FROM (
43734375 * SELECT
43744376 * `TABLE_CATALOG`,
4375- * IIF( `TABLE_SCHEMA` = 'information_schema', `TABLE_SCHEMA`, 'database_name') AS `TABLE_SCHEMA`,
4377+ * CASE WHEN `TABLE_SCHEMA` = 'information_schema' THEN `TABLE_SCHEMA` ELSE 'database_name' END AS `TABLE_SCHEMA`,
43764378 * `TABLE_NAME`,
43774379 * ...
43784380 * FROM `_wp_sqlite_mysql_information_schema_tables` AS `tables`
@@ -4442,7 +4444,7 @@ public function translate_table_ref( WP_Parser_Node $node ): string {
44424444 $ quoted_column = $ this ->quote_sqlite_identifier ( $ column );
44434445 if ( isset ( $ information_schema_db_column_map [ strtoupper ( $ column ) ] ) ) {
44444446 $ expanded_list [] = sprintf (
4445- "IIF( %s = 'information_schema', %s, %s) AS %s " ,
4447+ "CASE WHEN %s = 'information_schema' THEN %s ELSE %s END AS %s " ,
44464448 $ quoted_column ,
44474449 $ quoted_column ,
44484450 $ this ->connection ->quote ( $ this ->main_db_name ),
0 commit comments