summaryrefslogtreecommitdiff
path: root/connectivity/inc
diff options
context:
space:
mode:
authorOcke Janssen [oj] <Ocke.Janssen@sun.com>2010-02-08 14:05:16 +0100
committerOcke Janssen [oj] <Ocke.Janssen@sun.com>2010-02-08 14:05:16 +0100
commit5f71d659243796e2fea2514860ed7d020a3d6d5b (patch)
tree7b4baaf96a621404fb19f2d28e8d47a1fb4605bf /connectivity/inc
parent1e76109004db25f8d4906852124252738e54403a (diff)
dba33f: #i108730# impl case case and rank functions
Diffstat (limited to 'connectivity/inc')
-rw-r--r--connectivity/inc/connectivity/dbtools.hxx9
-rw-r--r--connectivity/inc/connectivity/sqliterator.hxx8
-rw-r--r--connectivity/inc/connectivity/sqlnode.hxx2
3 files changed, 19 insertions, 0 deletions
diff --git a/connectivity/inc/connectivity/dbtools.hxx b/connectivity/inc/connectivity/dbtools.hxx
index 3f09571287b5..79fb42f7f3ce 100644
--- a/connectivity/inc/connectivity/dbtools.hxx
+++ b/connectivity/inc/connectivity/dbtools.hxx
@@ -229,6 +229,15 @@ namespace dbtools
const ::rtl::OUString& _rName
);
+ /** returns the primary key columns of the table
+ */
+ OOO_DLLPUBLIC_DBTOOLS ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess> getPrimaryKeyColumns_throw(
+ const ::com::sun::star::uno::Any& i_aTable
+ );
+ OOO_DLLPUBLIC_DBTOOLS ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess> getPrimaryKeyColumns_throw(
+ const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& i_xTable
+ );
+
/** get fields for a result set given by a "command descriptor"
<p>A command descriptor here means:
diff --git a/connectivity/inc/connectivity/sqliterator.hxx b/connectivity/inc/connectivity/sqliterator.hxx
index e8e4c8e6a6f2..86ca3ebe85ff 100644
--- a/connectivity/inc/connectivity/sqliterator.hxx
+++ b/connectivity/inc/connectivity/sqliterator.hxx
@@ -43,6 +43,7 @@
#include <map>
#include <memory>
+#include <vector>
namespace connectivity
{
@@ -50,6 +51,8 @@ namespace connectivity
class OSQLParseNode;
class OSQLParser;
+ typedef ::std::pair<const OSQLParseNode*,const OSQLParseNode* > TNodePair;
+
enum OSQLStatementType {
SQL_STATEMENT_UNKNOWN,
SQL_STATEMENT_SELECT,
@@ -282,6 +285,10 @@ namespace connectivity
// tries to find the correct type of the function
sal_Int32 getFunctionReturnType(const OSQLParseNode* _pNode );
+
+ // returns a lis of all joined columns
+ ::std::vector< TNodePair >& getJoinConditions() const;
+
private:
/** traverses the list of table names, and filles _rTables
*/
@@ -354,6 +361,7 @@ namespace connectivity
{
m_aErrors = ::com::sun::star::sdbc::SQLException();
}
+ void impl_fillJoinConditions(const OSQLParseNode* i_pJoinCondition);
};
}
diff --git a/connectivity/inc/connectivity/sqlnode.hxx b/connectivity/inc/connectivity/sqlnode.hxx
index 965babf6dd38..05ba06c3ee27 100644
--- a/connectivity/inc/connectivity/sqlnode.hxx
+++ b/connectivity/inc/connectivity/sqlnode.hxx
@@ -232,6 +232,8 @@ namespace connectivity
comparison_predicate_part_2,
parenthesized_boolean_value_expression,
character_string_type,
+ other_like_predicate_part_2,
+ between_predicate_part_2,
rule_count, // letzter_wert
UNKNOWN_RULE // ID indicating that a node is no rule with a matching Rule-enum value (see getKnownRuleID)
};