2016-05-15 36 views
0

我需要将我的模拟结果插入到数据库中。我在ubuntu和omnet ++中使用mysql C++连接。最后一行突出显示。这里有什么问题?如何使用mysql C++连接插入查询

     sql::Driver *driver; 
         sql::Connection *con; 
         sql::Statement *stmt; 
         sql::ResultSet *res; 

         driver = get_driver_instance(); 
          con = driver->connect("TCP://127.0.0.1:3306", "root", "963369"); 

          con->setSchema("db_teste_omnet"); 
          stmt = con->createStatement(); 

         ev << "Inserting into DB \n"; 
         res->executeQuery("insert into omnetpp.sensor1 (dateTime, readings) values ('1', '2')"); 
+0

打开的MySQL命令行版本。使用命令行窗口执行您的查询。报告了哪些错误?请**编辑**错误信息。 –

回答

0

res->executeQuery

不能对结果集执行查询。

试试这个:

res = stmt->executeQuery(....)

...和老天爷店你的发言,连接和结果集指针在unique_ptrs ...

+0

你说得对,但不完全。由于这是一个INSERT,因此需要使用'executeUpdate()'而不是'executeQuery()'。所以:'int affected_rows = stmt-> executeUpdate(...);'。 – BJovke

+0

@BJovke很好。 –