fintp_udal
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
OracleDatabaseProvider.h
Go to the documentation of this file.
1
/*
2
* FinTP - Financial Transactions Processing Application
3
* Copyright (C) 2013 Business Information Systems (Allevo) S.R.L.
4
*
5
* This program is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>
17
* or contact Allevo at : 031281 Bucuresti, 23C Calea Vitan, Romania,
18
* phone +40212554577, office@allevo.ro <mailto:office@allevo.ro>, www.allevo.ro.
19
*/
20
21
#ifndef ORACLEDATABASEPROVIDER_H
22
#define ORACLEDATABASEPROVIDER_H
23
24
#include "../DatabaseProvider.h"
25
#include "../DataParameter.h"
26
27
#include <sstream>
28
29
#define MAX_ORACLE_DATE_DIMENSION 70
30
#define MAX_ORACLE_NUMBER_DIMENSION 30
31
32
namespace
FinTP
33
{
34
class
OracleDatabaseFactory
:
public
DatabaseProviderFactory
35
{
39
public
:
40
OracleDatabaseFactory
() :
DatabaseProviderFactory
(
"Oracle"
) {}
41
42
Database
*
createDatabase
();
48
DataParameterBase
*
createParameter
(
DataType::DATA_TYPE
paramType,
DataParameterBase::PARAMETER_DIRECTION
parameterDirection );
49
53
DataColumnBase
*
createColumn
(
DataType::DATA_TYPE
columnType,
unsigned
int
dimension,
int
scale,
const
string
&
name
);
54
62
static
DataColumnBase
*
internalCreateColumn
(
DataType::DATA_TYPE
columnType,
unsigned
int
dimension,
int
scale,
const
string
&
name
);
63
71
static
unsigned
short
int
getOracleSqlType
(
const
DataType::DATA_TYPE
type,
const
int
dimension );
72
76
static
unsigned
short
int
getOracleDataType
(
const
DataType::DATA_TYPE
type );
77
81
static
int
getOracleParameterDirection
(
DataParameterBase::PARAMETER_DIRECTION
paramDirection );
82
90
static
DataType::DATA_TYPE
getDataType
(
const
short
int
type,
const
int
dimension );
91
92
string
getParamPlaceholder
(
const
unsigned
int
i )
const
93
{
94
std::stringstream retval;
95
retval <<
":"
<< i;
96
return
retval.str();
97
}
98
99
string
getParamPlaceholder
(
const
string
& paramname )
const
100
{
101
std::stringstream retval;
102
retval <<
":"
<< paramname;
103
return
retval.str();
104
}
105
106
string
getTrimFunc
(
const
string
& value )
const
{
107
return
string(
"TRIM("
) + value + string(
")"
);
108
}
109
};
110
}
111
112
#endif // OracleDATABASEPROVIDER_H
src
Oracle
OracleDatabaseProvider.h
Generated on Tue Aug 12 2014 09:51:21 for fintp_udal by
1.8.3.1