From 295e98915d933970e56c65510b35f21e848f9af1 Mon Sep 17 00:00:00 2001 From: Andy Shaw Date: Fri, 31 Jul 2020 12:48:22 +0200 Subject: Introduce maximumIdentifierLength to return database limits for names Since Interbase/Firebird has a limit for column and table names then this function can be used by QSqlRelationalTableModel to make sure that the aliases created are within that limit. Change-Id: I0cb1c65b34befcb3690ccad3f081556dd2691344 Reviewed-by: Volker Hilsheimer --- src/plugins/sqldrivers/ibase/qsql_ibase.cpp | 6 ++++++ src/plugins/sqldrivers/ibase/qsql_ibase_p.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src/plugins/sqldrivers/ibase') diff --git a/src/plugins/sqldrivers/ibase/qsql_ibase.cpp b/src/plugins/sqldrivers/ibase/qsql_ibase.cpp index dc4eb036d8..75fc68ca9b 100644 --- a/src/plugins/sqldrivers/ibase/qsql_ibase.cpp +++ b/src/plugins/sqldrivers/ibase/qsql_ibase.cpp @@ -1884,4 +1884,10 @@ QString QIBaseDriver::escapeIdentifier(const QString &identifier, IdentifierType return res; } +int QIBaseDriver::maximumIdentifierLength(IdentifierType type) const +{ + Q_UNUSED(type); + return 31; +} + QT_END_NAMESPACE diff --git a/src/plugins/sqldrivers/ibase/qsql_ibase_p.h b/src/plugins/sqldrivers/ibase/qsql_ibase_p.h index 82a0ab8e4d..e7c908cf2b 100644 --- a/src/plugins/sqldrivers/ibase/qsql_ibase_p.h +++ b/src/plugins/sqldrivers/ibase/qsql_ibase_p.h @@ -106,7 +106,7 @@ public: bool subscribeToNotification(const QString &name) override; bool unsubscribeFromNotification(const QString &name) override; QStringList subscribedToNotifications() const override; - + int maximumIdentifierLength(IdentifierType type) const override; private Q_SLOTS: void qHandleEventNotification(void* updatedResultBuffer); }; -- cgit v1.2.3