Various settings for compatibility with MSSQL
This commit is contained in:
@@ -90,7 +90,8 @@ class ReportTables
|
|||||||
$rs = $stmt->executeQuery( 'DROP TABLE IF EXISTS `' . $sTableName . '`');
|
$rs = $stmt->executeQuery( 'DROP TABLE IF EXISTS `' . $sTableName . '`');
|
||||||
break;
|
break;
|
||||||
case 'mssql':
|
case 'mssql':
|
||||||
$rs = $stmt->executeQuery( 'DROP TABLE [' . $sTableName . ']');
|
$rs = $stmt->executeQuery( "IF OBJECT_ID (N'" . $sTableName . "', N'U') IS NOT NULL
|
||||||
|
DROP TABLE [" . $sTableName . "]");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -149,6 +150,41 @@ class ReportTables
|
|||||||
$sQuery .= ' DEFAULT CHARSET=utf8;';
|
$sQuery .= ' DEFAULT CHARSET=utf8;';
|
||||||
$rs = $stmt->executeQuery( $sQuery );
|
$rs = $stmt->executeQuery( $sQuery );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'mssql':
|
||||||
|
$sQuery = 'CREATE TABLE [' . $sTableName . '] (';
|
||||||
|
if ($bDefaultFields) {
|
||||||
|
$sQuery .= "[APP_UID] VARCHAR(32) NOT NULL DEFAULT '', [APP_NUMBER] INT NOT NULL,";
|
||||||
|
if ($sType == 'GRID') {
|
||||||
|
$sQuery .= "[ROW] INT NOT NULL,";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach ($aFields as $aField) {
|
||||||
|
switch ($aField['sType']) {
|
||||||
|
case 'number':
|
||||||
|
$sQuery .= '[' . $aField['sFieldName'] . '] ' . $this->aDef['mssql'][$aField['sType']] . " NOT NULL DEFAULT '0',";
|
||||||
|
break;
|
||||||
|
case 'char':
|
||||||
|
$sQuery .= '[' . $aField['sFieldName'] . '] ' . $this->aDef['mssql'][$aField['sType']] . " NOT NULL DEFAULT '',";
|
||||||
|
break;
|
||||||
|
case 'text':
|
||||||
|
$sQuery .= '[' . $aField['sFieldName'] . '] ' . $this->aDef['mssql'][$aField['sType']] . " NOT NULL DEFAULT '',";
|
||||||
|
break;
|
||||||
|
case 'date':
|
||||||
|
$sQuery .= '[' . $aField['sFieldName'] . '] ' . $this->aDef['mssql'][$aField['sType']] . " NULL,";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($bDefaultFields) {
|
||||||
|
$sQuery .= 'PRIMARY KEY (APP_UID' . ($sType == 'GRID' ? ',ROW' : '') . ')) ';
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$sQuery .= ' ';
|
||||||
|
}
|
||||||
|
|
||||||
|
$rs = $stmt->executeQuery( $sQuery );
|
||||||
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception $oError) {
|
catch (Exception $oError) {
|
||||||
@@ -286,7 +322,7 @@ class ReportTables
|
|||||||
if (!isset($aData[$aField['sFieldName']])) {
|
if (!isset($aData[$aField['sFieldName']])) {
|
||||||
$aData[$aField['sFieldName']] = '';
|
$aData[$aField['sFieldName']] = '';
|
||||||
}
|
}
|
||||||
$sQuery .= ",'" . (isset($aData[$aField['sFieldName']]) ? mssql_real_escape_string($aData[$aField['sFieldName']]) : '') . "'";
|
$sQuery .= ",'" . (isset($aData[$aField['sFieldName']]) ? mysql_real_escape_string($aData[$aField['sFieldName']]) : '') . "'";
|
||||||
break;
|
break;
|
||||||
case 'date':
|
case 'date':
|
||||||
$sQuery .= ",'" . (isset($aData[$aField['sFieldName']]) ? $aData[$aField['sFieldName']] : '') . "'";
|
$sQuery .= ",'" . (isset($aData[$aField['sFieldName']]) ? $aData[$aField['sFieldName']] : '') . "'";
|
||||||
@@ -706,7 +742,7 @@ class ReportTables
|
|||||||
if (!isset($aGridRow[$aField['sFieldName']])) {
|
if (!isset($aGridRow[$aField['sFieldName']])) {
|
||||||
$aGridRow[$aField['sFieldName']] = '';
|
$aGridRow[$aField['sFieldName']] = '';
|
||||||
}
|
}
|
||||||
$sQuery .= ",'" . (isset($aGridRow[$aField['sFieldName']]) ? mssql_real_escape_string($aGridRow[$aField['sFieldName']]) : '') . "'";
|
$sQuery .= ",'" . (isset($aGridRow[$aField['sFieldName']]) ? mysql_real_escape_string($aGridRow[$aField['sFieldName']]) : '') . "'";
|
||||||
break;
|
break;
|
||||||
case 'date':
|
case 'date':
|
||||||
$sQuery .= ",'" . (isset($aGridRow[$aField['sFieldName']]) ? $aGridRow[$aField['sFieldName']] : '') . "'";
|
$sQuery .= ",'" . (isset($aGridRow[$aField['sFieldName']]) ? $aGridRow[$aField['sFieldName']] : '') . "'";
|
||||||
|
|||||||
Reference in New Issue
Block a user