Unsolved Database event notification subscription
-
Hello. I trying to get real time notification after a table was inserted or updated. I thought about using timer to make request every X seconds, but wouldn't I be attacking my own server? I've been reading this CREATE EVENT NOTIFICATION and QSqlDriver::subscribeToNotification(const QString &name) I think is the solution, However. I'm having hard time understanding and implementing it.
I enabled service broker (ALTER DATABASE mybd SET ENABLE_BROKER).
from the example bellow, what is "Object_Created"? is it event type? does ALTER_TABLE count as insert? let's say I want to detect after a specific table was inserted. How can I accomplish this?
--Create a queue to receive messages. CREATE QUEUE NotifyQueue ; GO --Create a service on the queue that references --the event notifications contract. CREATE SERVICE NotifyService ON QUEUE NotifyQueue ([https://schemas.microsoft.com/SQL/Notifications/PostEventNotification]); GO --Create a route on the service to define the address --to which Service Broker sends messages for the service. CREATE ROUTE NotifyRoute WITH SERVICE_NAME = 'NotifyService', ADDRESS = 'LOCAL'; GO --Create the event notification. CREATE EVENT NOTIFICATION log_ddl1 ON SERVER FOR Object_Created TO SERVICE 'NotifyService', '8140a771-3c4b-4479-8ac0-81008ab17984' ;
and how do I connect/detect with notification() signal after the change was made? Does the code bellow do the job? Does the event notification return the inserted data? Sorry for many questions, I would like to understand. If anyone has knowledge on these I would appreciate any help. Thanks
QSqlDatabase::database().driver()->subscribeToNotification("EventNotification"); connect(QSqlDatabase::database().driver(), SIGNAL(notification(const QString&)), this, SLOT(notificationHandler(const QString&)));
-
Hi,
Disclaimer: I haven't used that feature yet.
Maybe a silly question but did you check that the driver provides that feature ?
-
@SGaist said in Database event notification subscription:
Maybe a silly question but did you check that the driver provides that feature ?
Not that silly - neither the MySQL nor the ODBC driver do support it (only IBASE, psql and SQLite).
-
@Christian-Ehrlicher, @SGaist Do you have any suggestion on how to achieve what I I would like to do?
-
@Christian-Ehrlicher said in Database event notification subscription:
@SGaist said in Database event notification subscription:
Maybe a silly question but did you check that the driver provides that feature ?
Not that silly - neither the MySQL nor the ODBC driver do support it (only IBASE, psql and SQLite).
Could you explain this better? which ODBC driver? does Qt provide ODBC driver or is the one that we manually install/comes pre-installed for Sql server? I'm kind of lost because microsoft states in features-of-the-microsoft-odbc-driver-for-sql-server:
Asynchronous Execution (Notification Method)
The ODBC Driver for SQL Server supports Asynchronous Execution (Notification Method). For a usage sample, see Asynchronous Execution (Notification Method) Sample.But I'm not sure if this Notification method is the same as event notification
-
As I already said - the Qt ODBC driver does not support notifications: https://doc.qt.io/qt-5/qsqldriver.html#hasFeature
-
@Christian-Ehrlicher I see, thanks. Do you have any suggestion?
-
@Ucn_ said in Database event notification subscription:
Do you have any suggestion?
You a database which supports notification or provide a patch to add notification support for the Qt ODBC driver.
-
@Christian-Ehrlicher Do you have any reference where I can read about adding the patch for the notification support? I can't find anything related to it. Thanks
-
You have to compile the odbc driver by yourself and then add the needed pieces in qsql_odbc.cpp
-
@Christian-Ehrlicher while trying to compile I receive this error:
Info: creating stash file C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\.qmake.stash Cannot read C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/qtsqldrivers-config.pri: No such file or directory Project ERROR: Library 'odbc' is not defined.
-
@Ucn_ said in Database event notification subscription:
while trying to compile I receive this error:
So did you run qmake as described, what was the output?
Make sure to remove config.cache before rerunning qmake. -
@Christian-Ehrlicher that was the error it gave after qmake. I tried to follow this:
1-open qt command prompt
2-cd C:\Program Files (x86)\Microsoft Visual Studio xxx\VC\ folder and run vcvarsall.bat
3-cd Qt xx\xx\Src\qtbase\src\plugins\sqldrivers\odbc
4-qmake odbc.pro (It failed here)
5-nmakeI'm not sure if this is the right way. I can't find config.cache file. By the way, when trying to open PSQL database it says: QSqlDatabase: QPSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
Do I need to add the PATH to the PostgreSQL bin and lib dir? -
So you did not follow the instructions how to build a sql driver.
-
@Christian-Ehrlicher I tried to follow what you sent, I get this output:
Setting up environment for Qt usage... Remember to call vcvarsall.bat to complete environment setup! C:\Qt\Qt\5.12.4\msvc2017_64>cd C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>vcvarsall.bat C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC>cd C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>qmake Running configuration tests... Done running configuration tests. Configure summary: Qt Sql Drivers: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. no OCI (Oracle) ........................... no ODBC ................................... no PostgreSQL ............................. no SQLite2 ................................ no SQLite ................................. yes Using system provided SQLite ......... no TDS (Sybase) ........................... no Qt is now configured for building. Just run 'nmake'. Once everything is built, you must run 'nmake install'. Qt will be installed into 'C:\Qt\Qt\5.12.4\msvc2017_64'. Prior to reconfiguration, make sure you remove any leftovers from the previous build. C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>nmake sub-odbc Microsoft (R) Program Maintenance Utility Version 14.00.24210.0 Copyright (C) Microsoft Corporation. All rights reserved. NMAKE : fatal error U1073: don't know how to make 'sub-odbc' Stop.
I have deleted config.cache (C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>del config.cache) as you suggested. But I didn't not run again, I just noticed the ODBC.........................no Is it supposed to say "no"?
-
@Christian-Ehrlicher said in Database event notification subscription:
@Ucn_ said in Database event notification subscription:
while trying to compile I receive this error:
So did you run qmake as described, what was the output?
Make sure to remove config.cache before rerunning qmake.I deleted config.cache(C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>del config.cache). But, I did not run again because I noticed the ODBC..............................no so I wanted to ask if it was supposed to be "no"?
-
It should be yes - so it does not find the odbc header or libraries - take a look into config.log
-
@Christian-Ehrlicher said in Database event notification subscription:
It should be yes - so it does not find the odbc header or libraries - take a look into config.log
After deleting config.cache and running again, this time it shows "yes". It runs but then I get this error:
fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86' NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\link.EXE"' : return code '0x458' Stop. NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop.
C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>qmake Running configuration tests... Checking for DB2 (IBM)... no Checking for InterBase... no Checking for MySQL... no Checking for OCI (Oracle)... no Checking for ODBC... yes Checking for PostgreSQL... no Checking for SQLite (version 2)... no Checking for TDS (Sybase)... no Done running configuration tests. Configure summary: Qt Sql Drivers: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. no OCI (Oracle) ........................... no ODBC ................................... yes PostgreSQL ............................. no SQLite2 ................................ no SQLite ................................. yes Using system provided SQLite ......... no TDS (Sybase) ........................... no Qt is now configured for building. Just run 'nmake'. Once everything is built, you must run 'nmake install'. Qt will be installed into 'C:\Qt\Qt\5.12.4\msvc2017_64'. Prior to reconfiguration, make sure you remove any leftovers from the previous build. C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>nmake sub-odbc Microsoft (R) Program Maintenance Utility Version 14.00.24210.0 Copyright (C) Microsoft Corporation. All rights reserved. cd odbc\ && ( if not exist Makefile C:\Qt\Qt\5.12.4\msvc2017_64\bin\qmake.exe -o Makefile C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\odbc\odbc.pro ) && "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\nmake.exe" -f Makefile Microsoft (R) Program Maintenance Utility Version 14.00.24210.0 Copyright (C) Microsoft Corporation. All rights reserved. "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\nmake.exe" -f Makefile.Release all Microsoft (R) Program Maintenance Utility Version 14.00.24210.0 Copyright (C) Microsoft Corporation. All rights reserved. cl -BxC:\Qt\Qt\5.12.4\msvc2017_64\bin\qmake.exe -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -O2 -Zi -MD -utf-8 /wd4530 /wd4577 -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 -E C:\Qt\Qt\5.12.4\msvc2017_64\mkspecs\features\data\dummy.cpp 2>NUL >.moc\release\moc_predefs.h C:\Qt\Qt\5.12.4\msvc2017_64\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -DNDEBUG -D_WINDLL --compiler-flavor=msvc --include C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc/.moc/release/moc_predefs.h -IC:/Qt/Qt/5.12.4/msvc2017_64/mkspecs/win32-msvc -IC:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtSql/5.12.4 -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtSql/5.12.4/QtSql -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtCore/5.12.4 -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtCore/5.12.4/QtCore -IC:/Qt/Qt/5.12.4/msvc2017_64/include -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtSql -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" main.cpp -o .moc\release\main.moc C:\Qt\Qt\5.12.4\msvc2017_64\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -DNDEBUG -D_WINDLL --compiler-flavor=msvc --include C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc/.moc/release/moc_predefs.h -IC:/Qt/Qt/5.12.4/msvc2017_64/mkspecs/win32-msvc -IC:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtSql/5.12.4 -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtSql/5.12.4/QtSql -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtCore/5.12.4 -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtCore/5.12.4/QtCore -IC:/Qt/Qt/5.12.4/msvc2017_64/include -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtSql -IC:/Qt/Qt/5.12.4/msvc2017_64/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" qsql_odbc_p.h -o .moc\release\moc_qsql_odbc_p.cpp rc /NOLOGO -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -DNDEBUG -D_WINDLL -fo .obj\release\qsqlodbc_resource.res qsqlodbc_resource.rc cl -c -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -O2 -Zi -MD -utf-8 /wd4530 /wd4577 -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 /Fd.obj\release\qsqlodbc.vc.pdb -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -DNDEBUG -D_WINDLL -I. -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtSql\5.12.4 -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtSql\5.12.4\QtSql -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtCore\5.12.4 -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtCore\5.12.4\QtCore -IC:\Qt\Qt\5.12.4\msvc2017_64\include -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtSql -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtCore -I.moc\release -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.6.11-winx64\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt\5.12.4\msvc2017_64\mkspecs\win32-msvc -Fo.obj\release\ @C:\Users\MACHO_~1\AppData\Local\Temp\nmD83A.tmp qsql_odbc.cpp main.cpp Generating Code... cl -c -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -O2 -Zi -MD -utf-8 /wd4530 /wd4577 -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 /Fd.obj\release\qsqlodbc.vc.pdb -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -DNDEBUG -D_WINDLL -I. -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtSql\5.12.4 -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtSql\5.12.4\QtSql -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtCore\5.12.4 -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtCore\5.12.4\QtCore -IC:\Qt\Qt\5.12.4\msvc2017_64\include -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtSql -IC:\Qt\Qt\5.12.4\msvc2017_64\include\QtCore -I.moc\release -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.6.11-winx64\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt\5.12.4\msvc2017_64\mkspecs\win32-msvc -Fo.obj\release\ @C:\Users\MACHO_~1\AppData\Local\Temp\nmB03.tmp moc_qsql_odbc_p.cpp link /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /OPT:REF /INCREMENTAL:NO /DLL /SUBSYSTEM:WINDOWS /VERSION:5.12 /OUT:..\plugins\sqldrivers\qsqlodbc.dll @C:\Users\MACHO_~1\AppData\Local\Temp\nm1C79.tmp Qt5Sql.lib(Qt5Sql.dll) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86' NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\link.EXE"' : return code '0x458' Stop. NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\nmake.exe"' : return code '0x2' Stop. NMAKE : fatal error U1077: 'cd' : return code '0x2' Stop.
-
@Christian-Ehrlicher msvc2017 gave that "conflict" error, I used mingw32-make to compile. it generated these files:
libqsqlodbc.a
libqsqlodbcd.a
qsqlodbc.dll
qsqlodbc.pdb
qsqlodbcd.dll
under C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\plugins\sqldrivers.
If this is the desired output, what is the next step? thanksThis was the output:
C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>del config.cache C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>qmake Running configuration tests... Checking for DB2 (IBM)... no Checking for InterBase... no Checking for MySQL... no Checking for OCI (Oracle)... no Checking for ODBC... yes Checking for PostgreSQL... no Checking for SQLite (version 2)... no Checking for TDS (Sybase)... no Done running configuration tests. Configure summary: Qt Sql Drivers: DB2 (IBM) .............................. no InterBase .............................. no MySql .................................. no OCI (Oracle) ........................... no ODBC ................................... yes PostgreSQL ............................. no SQLite2 ................................ no SQLite ................................. yes Using system provided SQLite ......... no TDS (Sybase) ........................... no Qt is now configured for building. Just run 'mingw32-make'. Once everything is built, you must run 'mingw32-make install'. Qt will be installed into 'C:\Qt\Qt5.13.2\5.13.2\mingw73_32'. Prior to reconfiguration, make sure you remove any leftovers from the previous build. C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers>mingw32-make sub-odbc cd odbc\ && ( if not exist Makefile C:\Qt\Qt5.13.2\5.13.2\mingw73_32\bin\qmake.exe -o Makefile C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\odbc\odbc.pro ) && mingw32-make -f Makefile mingw32-make[1]: Entering directory 'C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc' mingw32-make -f Makefile.Release all mingw32-make[2]: Entering directory 'C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc' g++ -c -fno-keep-inline-dllexport -O2 -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2\QtCore -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore -I.moc\release -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\win32-g++ -o .obj\release\qsql_odbc.o qsql_odbc.cpp g++ -fno-keep-inline-dllexport -O2 -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -dM -E -o .moc\release\moc_predefs.h C:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\features\data\dummy.cpp C:\Qt\Qt5.13.2\5.13.2\mingw73_32\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB --include C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc/.moc/release/moc_predefs.h -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/mkspecs/win32-g++ -IC:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2/QtCore -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" main.cpp -o .moc\release\main.moc g++ -c -fno-keep-inline-dllexport -O2 -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2\QtCore -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore -I.moc\release -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\win32-g++ -o .obj\release\main.o main.cpp C:\Qt\Qt5.13.2\5.13.2\mingw73_32\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB --include C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc/.moc/release/moc_predefs.h -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/mkspecs/win32-g++ -IC:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2/QtCore -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" qsql_odbc_p.h -o .moc\release\moc_qsql_odbc_p.cpp g++ -c -fno-keep-inline-dllexport -O2 -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2\QtCore -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore -I.moc\release -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\win32-g++ -o .obj\release\moc_qsql_odbc_p.o .moc\release\moc_qsql_odbc_p.cpp windres -i qsqlodbc_resource.rc -o .obj\release\qsqlodbc_resource_res.o --include-dir=. -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB g++ -Wl,-s -shared -Wl,-subsystem,windows -Wl,--out-implib,C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\plugins\sqldrivers\libqsqlodbc.a -o ..\plugins\sqldrivers\qsqlodbc.dll .obj/release/qsql_odbc.o .obj/release/main.o .obj/release/moc_qsql_odbc_p.o -LC:\openssl\lib -LC:\Utils\my_sql\mysql-5.7.25-win32\lib -LC:\Utils\postgresql\pgsql\lib C:\Qt\Qt5.13.2\5.13.2\mingw73_32\lib\libQt5Sql.a C:\Qt\Qt5.13.2\5.13.2\mingw73_32\lib\libQt5Core.a "C:\Program Files (x86)\Windows Kits\10\lib\10.0.17763.0\um\x86\odbc32.lib" .obj\release\qsqlodbc_resource_res.o mingw32-make[2]: Leaving directory 'C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc' mingw32-make -f Makefile.Debug all mingw32-make[2]: Entering directory 'C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc' g++ -c -fno-keep-inline-dllexport -g -Og -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2\QtCore -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore -I.moc\debug -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\win32-g++ -o .obj\debug\qsql_odbc.o qsql_odbc.cpp g++ -fno-keep-inline-dllexport -g -Og -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -dM -E -o .moc\debug\moc_predefs.h C:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\features\data\dummy.cpp C:\Qt\Qt5.13.2\5.13.2\mingw73_32\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB --include C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc/.moc/debug/moc_predefs.h -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/mkspecs/win32-g++ -IC:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2/QtCore -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" main.cpp -o .moc\debug\main.moc g++ -c -fno-keep-inline-dllexport -g -Og -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2\QtCore -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore -I.moc\debug -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\win32-g++ -o .obj\debug\main.o main.cpp C:\Qt\Qt5.13.2\5.13.2\mingw73_32\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB --include C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc/.moc/debug/moc_predefs.h -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/mkspecs/win32-g++ -IC:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql/5.13.2/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2 -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore/5.13.2/QtCore -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtSql -IC:/Qt/Qt5.13.2/5.13.2/mingw73_32/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" -I"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.17763.0\winrt" qsql_odbc_p.h -o .moc\debug\moc_qsql_odbc_p.cpp g++ -c -fno-keep-inline-dllexport -g -Og -std=c++1z -fno-exceptions -Wall -W -Wextra -Wvla -Wdate-time -Wshift-overflow=2 -Wduplicated-cond -Wno-stringop-overflow -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB -I. -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql\5.13.2\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2 -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore\5.13.2\QtCore -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtSql -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\include\QtCore -I.moc\debug -IC:\openssl\include -IC:\Utils\my_sql\mysql-5.7.25-win32\include -IC:\Utils\postgresql\pgsql\include -IC:\Qt\Qt5.13.2\5.13.2\mingw73_32\mkspecs\win32-g++ -o .obj\debug\moc_qsql_odbc_p.o .moc\debug\moc_qsql_odbc_p.cpp windres -i qsqlodbcd_resource.rc -o .obj\debug\qsqlodbcd_resource_res.o --include-dir=. -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DWINVER=0x0601 -D_WIN32_WINNT=0x0601 -DQT_DEPRECATED_WARNINGS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_NO_EXCEPTIONS -DQT_PLUGIN -DQT_SQL_LIB -DQT_CORE_LIB g++ -shared -Wl,-subsystem,windows -Wl,--out-implib,C:\Qt\Qt5.13.2\5.13.2\Src\qtbase\src\plugins\sqldrivers\plugins\sqldrivers\libqsqlodbcd.a -o ..\plugins\sqldrivers\qsqlodbcd.dll .obj/debug/qsql_odbc.o .obj/debug/main.o .obj/debug/moc_qsql_odbc_p.o -LC:\openssl\lib -LC:\Utils\my_sql\mysql-5.7.25-win32\lib -LC:\Utils\postgresql\pgsql\lib C:\Qt\Qt5.13.2\5.13.2\mingw73_32\lib\libQt5Sqld.a C:\Qt\Qt5.13.2\5.13.2\mingw73_32\lib\libQt5Cored.a "C:\Program Files (x86)\Windows Kits\10\lib\10.0.17763.0\um\x86\odbc32.lib" .obj\debug\qsqlodbcd_resource_res.o mingw32-make[2]: Leaving directory 'C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc' mingw32-make[1]: Leaving directory 'C:/Qt/Qt5.13.2/5.13.2/Src/qtbase/src/plugins/sqldrivers/odbc'
-
@Ucn_ said in Database event notification subscription:
If this is the desired output, what is the next step? thanks
Now since the plugin is build you can start fixing it.