【问题标题】:MariaDB connector c ++ memory protection violationMariaDB 连接器 C++ 内存保护违规
【发布时间】:2021-07-18 08:33:41
【问题描述】:

我在使用 MariaDB 连接到数据库时遇到问题。当我尝试用 conn 做任何事情时,它会打印出内存冲突。 我用的是 Linux Mint 20.1!!

#include <iostream>
#include <memory>
#include <mariadb/conncpp.hpp>

int main(int argc, char**argv)
{
      sql::Driver* driver = sql::mariadb::get_driver_instance();

      sql::SQLString url("///");
      sql::SQLString base("///");
      std::cout << driver->getName() << std::endl;
      sql::Properties properties({
            {"base", "base"},
            {"password", "password"}
         });

      sql::Connection*conn = driver->connect(url,properties);
      conn->setSchema(base);// here
}

有谁知道问题出在哪里? 提前感谢您的帮助。

【问题讨论】:

    标签: c++ mysql linux mariadb mysql-connector


    【解决方案1】:

    driver->connect 可能返回 nullptr。我想这正在发生。你不检查conn。 还有DriverManager::getConnection,与Driver::connect不同,这种情况下会抛出异常。

    【讨论】:

      猜你喜欢
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 2019-01-07
      • 1970-01-01
      • 1970-01-01
      • 2019-12-05
      • 1970-01-01
      • 2012-06-14
      相关资源
      最近更新 更多