summaryrefslogtreecommitdiff
path: root/connectivity/source/drivers
diff options
context:
space:
mode:
authorJulien Nabet <serval2412@yahoo.fr>2023-12-03 11:50:56 +0100
committerJulien Nabet <serval2412@yahoo.fr>2023-12-03 13:26:25 +0100
commit38fe084882f48153c956bc07079d5d64c41c546c (patch)
tree16ef28fd6e5e95a7054d1c631f379cc4bc3c6218 /connectivity/source/drivers
parentdd011c3c1d3bfbc583c8e65a6021defe21fa5472 (diff)
Mysql/Mariadb: implement Users::dropObject (so you can remove a user from UI)
Change-Id: Ic8fee60e1182303469b5c74598d0ff6ec24667a0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160259 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Tested-by: Jenkins
Diffstat (limited to 'connectivity/source/drivers')
-rw-r--r--connectivity/source/drivers/mysqlc/mysqlc_users.cxx10
1 files changed, 8 insertions, 2 deletions
diff --git a/connectivity/source/drivers/mysqlc/mysqlc_users.cxx b/connectivity/source/drivers/mysqlc/mysqlc_users.cxx
index 62b8ae44836c..eb7de4cd4639 100644
--- a/connectivity/source/drivers/mysqlc/mysqlc_users.cxx
+++ b/connectivity/source/drivers/mysqlc/mysqlc_users.cxx
@@ -11,6 +11,7 @@
#include "mysqlc_user.hxx"
#include "mysqlc_users.hxx"
+#include <comphelper/types.hxx>
using namespace ::connectivity;
using namespace ::connectivity::mysqlc;
@@ -60,13 +61,18 @@ ObjectType Users::appendObject(const OUString& rName, const uno::Reference<XProp
}
//----- XDrop -----------------------------------------------------------------
-void Users::dropObject(sal_Int32 nPosition, const OUString&)
+void Users::dropObject(sal_Int32 nPosition, const OUString& rName)
{
uno::Reference<XPropertySet> xUser(getObject(nPosition));
if (!ODescriptor::isNew(xUser))
{
- // TODO: drop me
+ Reference<XStatement> statement = m_xMetaData->getConnection()->createStatement();
+ if (statement.is())
+ {
+ statement->execute("DROP USER " + rName);
+ ::comphelper::disposeComponent(statement);
+ }
}
}