{"id":601,"date":"2015-02-18T18:03:55","date_gmt":"2015-02-18T12:33:55","guid":{"rendered":"http:\/\/www.e-consystems.com\/blog\/linux-android\/?p=601"},"modified":"2024-03-19T13:52:03","modified_gmt":"2024-03-19T08:22:03","slug":"qt-database","status":"publish","type":"post","link":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/qt-database\/","title":{"rendered":"Store MQTT Data From Sensors Into MySQL Database"},"content":{"rendered":"<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">This article will explain how e-con\u2019s <\/span><\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/iMX6-som-system-on-module.asp\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">eSOMiMX6<\/span><\/span><\/a><\/u><\/span><\/span><u> <\/u> <span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">can be used to store MQTT data from sensors into MySQL database using Qt.<\/span><\/span><\/span><\/p>\n<p class=\"western\"><strong>MQTT<\/strong> is a great protocol for Sensors to publish data to their Subscribers. However, when it comes to analytics or reporting, you need historical data. Most MQTT brokers don\u2019t provide any built-in mechanism to save MQTT data into Database.<\/p>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">To showcase how we can store MQTT data from sensors into MySQL database on <\/span><\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><a href=\"https:\/\/www.e-consystems.com\/iMX6-som-system-on-module.asp\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">eSOMiMX6<\/span><\/span><\/a><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\"> device, we made the following setup:<\/span><\/span><\/span><\/p>\n<ul>\n<li>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">Developed a MQTT subscriber Qt application using QtMQTT. The subscriber application will push MQTT Data into MySQL Database. <\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">Made <\/span><\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/iMX6-som-system-on-module.asp\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">eSOMiMX6<\/span><\/span><\/a><\/u><\/span><\/span><span style=\"color: #00000a;\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"zxx\"> to act as a broker.<\/span><\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<ul>\n<li>\n<p class=\"western\" align=\"left\"><span style=\"color: #00000a;\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"zxx\">Used particle photon board with weather shield addon board to publish temperature, pressure, wind speed, direction values.<\/span><\/span><\/span><\/span><\/p>\n<\/li>\n<\/ul>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">The Subscriber\/client application used <\/span><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\"><b>Qt SQL<\/b><\/span><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\"> module to access the database. <\/span><\/span><\/span><\/p>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">The <\/span><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\"><b>Qt SQL<\/b><\/span><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\"> module uses driver plugins to communicate with several database APIs. Qt has drivers for SQLite, MySQL, DB2, Oracle, ODBC, and PostgreSQL. With the <strong>MySQL<\/strong> driver, it is possible to connect to a MySQL server.<\/span><\/span><\/span><\/p>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">Once the driver part is set up, the data is accessible using the classes, QSqlQueryModel, QSqlTableModel, and QSqlRelationalTableModel.<\/span><\/span><\/span><\/p>\n<p lang=\"en-US\" align=\"left\"><span style=\"font-family: SimSun, serif;\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">Full source code for the application is available on e-con Systems\u2122 <\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/developer.e-consystems.com\/\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">developer site<\/span><\/span><\/a><\/u><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">.<\/span><\/span><\/span><\/p>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">Please refer our previous articles on <\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/getting-started-with-qt-creator-on-esomimx6\/\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">How to setup Qt creator for eSOMiMX6 devices<\/span><\/span><\/a><\/u><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"> and <\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/build-deploy-and-run-qt-application-on-esomimx6\/\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">How to build, deploy and run Qt applications on eSOMiIMX6 devices<\/span><\/span><\/a><\/u><\/span><\/span><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"> to build and run the application on <\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><u><a href=\"https:\/\/www.e-consystems.com\/iMX6-som-system-on-module.asp\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"zh-CN\">eSOMiMX6<\/span><\/span><\/span><\/a><\/u><\/span><\/span> <span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\">devices.<\/span><\/span><\/p>\n<p class=\"western\" align=\"left\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">For further assistance and queries get in touch with <\/span><\/span><\/span><span style=\"color: #000080;\"><span lang=\"zxx\"><a href=\"mailto:sales@e-consystems.com\"><span style=\"font-family: Liberation Sans, serif;\"><span style=\"font-size: medium;\"><span lang=\"en-US\">sales@e-consystems.com<\/span><\/span><\/span><\/a><\/span><\/span><\/p>\n<p align=\"left\">Store MQTT Data From Sensors Into Qt MySQL Database :<\/p>\n<ul>\n<li><a href=\"https:\/\/developer.e-consystems.com\/Downloads?key=eHXS6SCPs08yz6FWgn2e22vNnDqXmUZLghhHOqh3DfwQO6V41%2FXOD%2FdtS5N0DrvNNWdZmFc2fjtRGxNLjlbOTLCwE5BC7rtPsZnIakApMzLh3ucPRMNmpc2Mz%2FFbGVzJbmKM7cs0M4s9bNuynaxYIIW96HbgXyP5HYbmHJgCJUd6Sd1aooKKCTmTVwss6z3BRbcjSDvD%2Bm%2FtaGrQTbODlpSvXhkVvHrdnF93m50aXjRMd%2BFPvn3V0MwGO9bEtuDBhOf8FsHrplrs2dmABhAiG4MWW7E5qsR8ZW5dH8Jto7EWUFewvQqDOBTk5Sd2KQe%2B\">Qt-QML-Setup-Qt-Creator-Steps Application Guide<\/a><\/li>\n<li><a href=\"https:\/\/developer.e-consystems.com\/Downloads?key=eHXS6SCPs08yz6FWgn2e20Xf3vIoDl0vF4Tatb58piPNfwvSz7rS%2BQiDBbcpL5f3CmFYnTh6ph9mKmjGFQAz1rQgeVBBjvs%2BwhbO53BpzZ3ofbLkq6YQJYkh%2FWo7eQsqYfQwTf04BBq8B4J11tKjBaqu%2BhfivyEG59ifa1o0xJHhXKt4hhv66zKcMRAnlXtRBcRIhm5XoEkE3tpQFG4b4lH8WjS1AZsEH9BcvIPJkDvPc6gkyvrJHsu%2BzTCaigjWRtZMelOdlrh3Dg2v2m8ZzwvHKkYMGP4PGUFyYNZ0plyuYC%2FCGRYj%2FxU7PegEkZEZ\">Qt-QML-Build-Deploy-Run-Steps Application Guide<\/a><\/li>\n<li><a href=\"https:\/\/developer.e-consystems.com\/Downloads?key=eHXS6SCPs08yz6FWgn2e27aXrUKsRClbddUo2e45jXheKzLHJRrl2lvYvTpFybxJr7cNbhTDNl%2F%2BKdEEr1nuZtxUGqCVPGlQUUTRF5ZyeUhJDENhqzcDA1Flt%2FNXf27iuSD15p2LY%2Bk%2FT7mjgBbeX95dW7Kq%2FhJT2BuaVkhj%2FdjGee53N9b14v2Mw3WZyeHWC2%2BJApcYXxw5K3atuvunEOc%2F4bkM58Kd%2B9nKESjBDYhMQQuAj0QGh7m6kQRBZRSS46uQNZ8q%2FBCkkHiaLnwGef8DzIrHjHQEei%2FLYxfRBqg%3D\">Qt-Advance Samples Containing Qt Application To Store MQTT Data In MySQL Database<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This article will explain how e-con\u2019s eSOMiMX6 can be used to store MQTT data from&#8230;<\/p>\n","protected":false},"author":17,"featured_media":2101,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[127],"tags":[136,207,129,138,137],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts\/601"}],"collection":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/comments?post=601"}],"version-history":[{"count":16,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts\/601\/revisions"}],"predecessor-version":[{"id":3023,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/posts\/601\/revisions\/3023"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/media\/2101"}],"wp:attachment":[{"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/media?parent=601"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/categories?post=601"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.e-consystems.com\/blog\/system-on-module-som\/wp-json\/wp\/v2\/tags?post=601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}