Qual: Renommage de quelques fonctions des drivers DB pour plus de clart

This commit is contained in:
Laurent Destailleur
2006-11-15 01:04:38 +00:00
parent f2daee0011
commit 7b2533a21f
5 changed files with 343 additions and 311 deletions

View File

@@ -43,7 +43,7 @@ class DoliDb
var $type='mysql'; // Nom du gestionnaire
var $forcecharset='latin1';
var $forcecollate='latin1_swedish_ci';
var $versionmin=array(4,1,0);
var $versionmin=array(3,1,0); // Version min database
var $results; // Resultset de la derni<6E>re requete
@@ -190,6 +190,7 @@ class DoliDb
\param passwd mot de passe
\param name nom de la database (ne sert pas sous mysql, sert sous pgsql)
\return resource handler d'acc<63>s <20> la base
\seealso close
*/
function connect($host, $login, $passwd, $name)
{
@@ -222,33 +223,11 @@ class DoliDb
}
/**
\brief Cr<43>ation d'une nouvelle base de donn<6E>e
\param database nom de la database <20> cr<63>er
\return resource resource d<>finie si ok, null si ko
\remarks Ne pas utiliser les fonctions xxx_create_db (xxx=mysql, ...) car elles sont deprecated
*/
function create_db($database)
{
// ALTER DATABASE dolibarr_db DEFAULT CHARACTER SET latin DEFAULT COLLATE latin1_swedish_ci
$sql = 'CREATE DATABASE '.$database;
$sql.= ' DEFAULT CHARACTER SET '.$this->forcecharset.' DEFAULT COLLATE '.$this->forcecollate;
$ret=$this->query($sql);
if (! $ret)
{
// On r<>essaie pour compatibilit<69> avec Mysql < 5.0
$sql = 'CREATE DATABASE '.$database;
$ret=$this->query($sql);
}
//print "database=".$this->database_name." ret=".$ret." mysqlerror=".mysql_error($this->db);
return $ret;
}
/**
\brief Fermeture d'une connection vers une database.
\return resource
\seealso connect
*/
function close()
{
@@ -578,14 +557,59 @@ class DoliDb
}
/**
\brief Renvoie la commande sql qui donne les droits sur les tables
\return string Requete sql
\brief Renvoie la commande sql qui donne les droits <EFBFBD> user sur toutes les tables
\param databaseuser User <20> autoriser
\return string Requete sql
*/
function getGrantForUserQuery($databaseuser)
{
return '';
}
/**
\brief Retourne le dsn pear
\return dsn
*/
function getDSN($db_type,$db_user,$db_pass,$db_host,$db_name)
{
return $db_type.'://'.$db_user.':'.$db_pass.'@'.$db_host.'/'.$db_name;
}
/**
\brief Cr<43>ation d'une nouvelle base de donn<6E>e
\param database nom de la database <20> cr<63>er
\return resource resource d<>finie si ok, null si ko
\remarks Ne pas utiliser les fonctions xxx_create_db (xxx=mysql, ...) car elles sont deprecated
*/
function DDLCreateDb($database)
{
// ALTER DATABASE dolibarr_db DEFAULT CHARACTER SET latin DEFAULT COLLATE latin1_swedish_ci
$sql = 'CREATE DATABASE '.$database;
$sql.= ' DEFAULT CHARACTER SET '.$this->forcecharset.' DEFAULT COLLATE '.$this->forcecollate;
$ret=$this->query($sql);
if (! $ret)
{
// On r<>essaie pour compatibilit<69> avec Mysql < 5.0
$sql = 'CREATE DATABASE '.$database;
$ret=$this->query($sql);
}
//print "database=".$this->database_name." ret=".$ret." mysqlerror=".mysql_error($this->db);
return $ret;
}
/**
\brief Liste des tables dans une database.
\param database Nom de la database
\return resource
*/
function DDLListTables($database)
{
$this->results = mysql_list_tables($database, $this->db);
return $this->results;
}
/**
\brief Cr<43>e une table
\param table Nom de la table
@@ -597,7 +621,7 @@ class DoliDb
\param type type de la table
\return true/false selon si requ<71>te a provoqu<71> un erreur mysql ou pas
*/
function create_table($table,$fields,$primary_key,$type,$unique_keys="",$fulltext_keys="",$keys="")
function DDLCreateTable($table,$fields,$primary_key,$type,$unique_keys="",$fulltext_keys="",$keys="")
{
// cl<63>s recherch<63>es dans le tableau des descriptions (fields) : type,value,attribute,null,default,extra
// ex. : $fields['rowid'] = array('type'=>'int','value'=>'11','null'=>'not null','extra'=> 'auto_increment');
@@ -661,6 +685,19 @@ class DoliDb
return true;
}
/**
\brief d<>crit une table dans une database.
\param table Nom de la table
\param field Optionnel : Nom du champ si l'on veut la desc d'un champ
\return resource
*/
function DDLDescTable($table,$field="")
{
// $this->results = $this->query("DESC ".$table." ".$field);
$this->results = $this->query("DESC ".$table." ".$field);
return $this->results;
}
/**
\brief Ins<6E>re un nouveau champ dans une table
\param table Nom de la table
@@ -669,7 +706,7 @@ class DoliDb
\param field_position Optionnel ex.: "after champtruc"
\return true/false Selon si requ<71>te a provoqu<71> un erreur mysql ou pas
*/
function add_field($table,$field_name,$field_desc,$field_position="")
function DDLAddField($table,$field_name,$field_desc,$field_position="")
{
// cl<63>s recherch<63>es dans le tableau des descriptions (field_desc) : type,value,attribute,null,default,extra
// ex. : $field_desc = array('type'=>'int','value'=>'11','null'=>'not null','extra'=> 'auto_increment');
@@ -695,40 +732,6 @@ class DoliDb
else
return true;
}
/**
\brief Retourne le dsn pear
\return dsn
*/
function getdsn($db_type,$db_user,$db_pass,$db_host,$db_name)
{
return $db_type.'://'.$db_user.':'.$db_pass.'@'.$db_host.'/'.$db_name;
}
/**
\brief Liste des tables dans une database.
\param database Nom de la database
\return resource
*/
function list_tables($database)
{
$this->results = mysql_list_tables($database, $this->db);
return $this->results;
}
/**
\brief d<>crit une table dans une database.
\param table Nom de la table
\param field Optionnel : Nom du champ si l'on veut la desc d'un champ
\return resource
*/
function desc_table($table,$field="")
{
// $this->results = $this->query("DESC ".$table." ".$field);
$this->results = $this->query("DESC ".$table." ".$field);
return $this->results;
}
}
?>