ePages 6.11.0 - DE_EPAGES/ShopTransfer/API/DBImySQL.pm

Package DE_EPAGES::ShopTransfer::API::DBImySQL

Functions

disableForeignKeyChecks
getAllColumns
getAllPrimaryKeys
getAllReferences
getGeneralizeDateTimeStatement
getTypesOfColumns
getUniqueIndexes
isColumnAutoIncrement
reserveIdentifier

disableForeignKeyChecks

Disables foreign key checks during execution of $Code.

Syntax
$dbi->disableForeignKeyChecks($Code);
Input
$Code (code)
code reference

getAllColumns

Returns all columns of all tables in the current database.

Syntax
$hTableColumns = $dbi->getAllColumns;
Return
$hTableReferences (ref.hash.hash.hash.string)

{
$TableName => {
$ColumnName => {
Position => $Position,
},...
}, ...
}

getAllPrimaryKeys

Returns all primary keys of all tables in the current database.

Syntax
$hTablePrimaryKeys = $dbi->getAllPrimaryKeys;
Input
$Table (string)
table name
Return
$hTableReferences (ref.hash.hash.string/array)

{
$TableName => [ $ColumnName, ... ],
...
}

getAllReferences

Returns all foreign keys of all tables in the current database.

Syntax
$hTableReferences = $dbi->getAllReferences;
Return
$hTableReferences (ref.hash.hash.hash.string)

{
$TableName => {
$ColumnName => {
ConstraintName => $ConstraintName,
MasterTableName => $MasterTableName,
MasterColumnName => $MasterColumnName,
},...
}, ...
}

getGeneralizeDateTimeStatement

Returns a statement for querying datetime columns in a generalized format. Instead of returning the plain column name, a convert statement like 'convert(char(19), $TablePrefix$Column, 117)' is returned and can be integrated into a 'SELECT $statement from table where bla' query.

Syntax
$statement = $dbi->getGeneralizeDateTimeStatement($Column);
Input
$Column (string)
column name
$TablePrefix (string)
prefix, which should be inserted before the column name
Return
$statement (string)
the new column statement

getTypesOfColumns

Returns types of columns. Currently used types: bit,char,datetime,float, int,money,nchar,numeric,nvarchar,text,tinyint,varchar

Syntax
$hTypes= $dbi->getTypesOfColumns($Table);
Input
$Table (string)
table name
Return
$hTypes (ref.hash.string)
column types key: columnname value: type

getUniqueIndexes

Returns first columns of all unique indexes.

Syntax
@Columns = $dbi->getUniqueIndexes($Table);
Input
$Table (string)
table name
Return
@Columns (array.string)
column names

isColumnAutoIncrement

Returns 1 if the table has an auto increment column or an _nextid table

Syntax
$isAutoInc = $dbi->isColumnAutoIncrement();
Input
$Table (string)
table name
Return
$Parameter (int)
binary value

reserveIdentifier

Updates the _nextid table, to define a gap for bcp input.

Syntax
$FirstNextID = $dbi->reserveIdentifier($Table, $CountOfRows, $StoreDirectory);
Input
$Table (string)
table name
$CountOfRows (integer)
requested row count
$StoreDirectory (string)
export directory of the store
Return
$FirstNextID (integer)
first free identifier