[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] CVS: setup/inc class.schema_proc_pgsql.inc.php,1.10.
From: |
Ralf Becker <address@hidden> |
Subject: |
[Phpgroupware-cvs] CVS: setup/inc class.schema_proc_pgsql.inc.php,1.10.2.1,1.10.2.2 |
Date: |
Mon, 17 Mar 2003 19:02:13 -0500 |
Update of /cvsroot/phpgroupware/setup/inc
In directory subversions:/tmp/cvs-serv20164
Modified Files:
Tag: Version-0_9_14-branch
class.schema_proc_pgsql.inc.php
Log Message:
fix for postgreSql's AddColumn, to allow to set a default and a not null
contraint, they are not allowed in add column in pgSQL
Index: class.schema_proc_pgsql.inc.php
===================================================================
RCS file:
/cvsroot/phpgroupware/setup/inc/Attic/class.schema_proc_pgsql.inc.php,v
retrieving revision 1.10.2.1
retrieving revision 1.10.2.2
diff -C2 -r1.10.2.1 -r1.10.2.2
*** class.schema_proc_pgsql.inc.php 11 Apr 2002 14:11:05 -0000 1.10.2.1
--- class.schema_proc_pgsql.inc.php 18 Mar 2003 00:02:11 -0000 1.10.2.2
***************
*** 579,586 ****
function AddColumn($oProc, &$aTables, $sTableName,
$sColumnName, &$aColumnDef)
{
$oProc->_GetFieldSQL($aColumnDef, $sFieldSQL);
$query = "ALTER TABLE $sTableName ADD COLUMN
$sColumnName $sFieldSQL";
! return !!($oProc->m_odb->query($query));
}
--- 579,613 ----
function AddColumn($oProc, &$aTables, $sTableName,
$sColumnName, &$aColumnDef)
{
+ if (isset($aColumnDef['default'])) // pgsql cant
add a colum with a default
+ {
+ $default = $aColumnDef['default'];
+ unset($aColumnDef['default']);
+ }
+ if (isset($aColumnDef['nullable']) &&
!$aColumnDef['nullable']) // pgsql cant add a column not nullable
+ {
+ $notnull = !$aColumnDef['nullable'];
+ unset($aColumnDef['nullable']);
+ }
$oProc->_GetFieldSQL($aColumnDef, $sFieldSQL);
$query = "ALTER TABLE $sTableName ADD COLUMN
$sColumnName $sFieldSQL";
! if (($Ok = !!($oProc->m_odb->query($query))) &&
isset($default))
! {
! $query = "ALTER TABLE $sTableName ALTER COLUMN
$sColumnName SET DEFAULT '$default';\n";
!
! $query .= "UPDATE $sTableName SET
$sColumnName='$default';\n";
!
! $Ok = !!($oProc->m_odb->query($query));
!
! if ($OK && $notnull)
! {
! // unfortunally this is pgSQL >= 7.3
! //$query .= "ALTER TABLE $sTableName
ALTER COLUMN $sColumnName SET NOT NULL;\n";
! //$Ok =
!!($oProc->m_odb->query($query));
! // so we do it the slow way
! AlterColumn($oProc, $aTables,
$sTableName, $sColumnName, $aColumnDef);
! }
! }
! return $Ok;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] CVS: setup/inc class.schema_proc_pgsql.inc.php,1.10.2.1,1.10.2.2,
Ralf Becker <address@hidden> <=
- Prev by Date:
[Phpgroupware-cvs] CVS: setup/inc class.schema_proc.inc.php,1.3.2.1,1.3.2.2 class.setup_process.inc.php,1.8.2.3,1.8.2.4
- Next by Date:
[Phpgroupware-cvs] CVS: phpgwapi/inc class.schema_proc_pgsql.inc.php,1.3,1.4
- Previous by thread:
[Phpgroupware-cvs] CVS: setup/inc class.schema_proc.inc.php,1.3.2.1,1.3.2.2 class.setup_process.inc.php,1.8.2.3,1.8.2.4
- Next by thread:
[Phpgroupware-cvs] CVS: phpgwapi/inc class.schema_proc_pgsql.inc.php,1.3,1.4
- Index(es):