diff -urN adodb508a/adodb-lib.inc.php adodb/adodb-lib.inc.php
--- adodb510/adodb-lib.inc.php	2009-05-16 00:45:10.000000000 +0200
+++ adodb/adodb-lib.inc.php	2009-05-16 00:45:17.000000000 +0200
@@ -886,7 +886,7 @@
 	$values = substr($values, 0, -2);
 
 	// Append the fields and their values to the insert query.
-	return 'INSERT INTO '.$tableName.' ( '.$fields.' ) VALUES ( '.$values.' )';
+	return 'INSERT INTO '.$zthis->nameQuote.$tableName.$zthis->nameQuote.' ( '.$fields.' ) VALUES ( '.$values.' )';
 }
 
 
diff -urN adodb510/datadict/datadict-oci8.inc.php adodb/datadict/datadict-oci8.inc.php
--- adodb510/datadict/datadict-oci8.inc.php	2009-05-16 00:45:10.000000000 +0200
+++ adodb/datadict/datadict-oci8.inc.php	2009-05-16 00:45:17.000000000 +0200
@@ -110,6 +110,7 @@
 	
 	function AddColumnSQL($tabname, $flds)
 	{
+		$tabname = $this->TableName ($tabname);
 		$f = array();
 		list($lines,$pkey) = $this->_GenFields($flds);
 		$s = "ALTER TABLE $tabname ADD (";
@@ -124,6 +125,7 @@
 	
 	function AlterColumnSQL($tabname, $flds)
 	{
+		$tabname = $this->TableName ($tabname);
 		$f = array();
 		list($lines,$pkey) = $this->_GenFields($flds);
 		$s = "ALTER TABLE $tabname MODIFY(";
@@ -137,6 +139,7 @@
 	
 	function DropColumnSQL($tabname, $flds)
 	{
+		$tabname = $this->TableName ($tabname);
 		if (!is_array($flds)) $flds = explode(',',$flds);
 		foreach ($flds as $k => $v) $flds[$k] = $this->NameQuote($v);
 		
@@ -260,9 +263,9 @@
 		}
 		
 		if ( is_array($flds) )
-			$flds = implode(', ',$flds);
-		$s = 'CREATE' . $unique . ' INDEX ' . $idxname . ' ON ' . $tabname . ' (' . $flds . ')';
-		
+			$flds = implode('", "',$flds);
+		$s = 'CREATE' . $unique . ' INDEX "' . $idxname . '" ON "' .$tabname . '" ("' . $flds . '")';
+
 		if ( isset($idxoptions[$this->upperName]) )
 			$s .= $idxoptions[$this->upperName];
 		
diff -urN adodb510/datadict/datadict-postgres.inc.php adodb/datadict/datadict-postgres.inc.php
--- adodb510/datadict/datadict-postgres.inc.php	2009-05-16 00:45:10.000000000 +0200
+++ adodb/datadict/datadict-postgres.inc.php	2009-05-16 00:45:17.000000000 +0200
@@ -418,7 +418,7 @@
 		
 		$unique = isset($idxoptions['UNIQUE']) ? ' UNIQUE' : '';
 		
-		$s = 'CREATE' . $unique . ' INDEX ' . $idxname . ' ON ' . $tabname . ' ';
+		$s = 'CREATE' . $unique . ' INDEX "' . $idxname . '" ON "' . $tabname . '" ';
 		
 		if (isset($idxoptions['HASH']))
 			$s .= 'USING HASH ';
@@ -427,8 +427,8 @@
 			$s .= $idxoptions[$this->upperName];
 		
 		if ( is_array($flds) )
-			$flds = implode(', ',$flds);
-		$s .= '(' . $flds . ')';
+			$flds = implode('", "',$flds);
+		$s .= '("' . $flds . '")';
 		$sql[] = $s;
 		
 		return $sql;
diff -urN adodb510/drivers/adodb-oci8.inc.php adodb/drivers/adodb-oci8.inc.php
--- adodb510/drivers/adodb-oci8.inc.php	2009-05-16 00:45:11.000000000 +0200
+++ adodb/drivers/adodb-oci8.inc.php	2009-05-16 00:45:17.000000000 +0200
@@ -106,7 +106,7 @@
 		$ADODB_FETCH_MODE = ADODB_FETCH_NUM;
 		if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false);
 		
-		$rs = $this->Execute(sprintf($this->metaColumnsSQL,strtoupper($table)));
+		$rs = $this->Execute(sprintf($this->metaColumnsSQL,$table));
 		
 		if (isset($savem)) $this->SetFetchMode($savem);
 		$ADODB_FETCH_MODE = $save;
