c++ - 将 FLOAT 值插入 mysql 表
问题描述
我正在尝试使用(正在使用 C++ 连接器)将 FLOAT 类型的值插入到表中
res = stmt->executeQuery("INSERT INTO `ticker_info`(`a1`,`a2`,`a3`,`b1`,`b2`,`b3`,`c1`,`c2`,`v1`,`v2`,`p1`,`p2`,`t1`,`t2`,`l1`,`l2`,`h1`,`h2`,`o1`) VALUES ('" + a1 + "','" + a2 + "','" + a3 + "','" + b1 + "','" + b2 + "','" + b3 + "','" + c1 + "','" + c2 + "','" + v1 + "','" + v2 + "','" + p1 + "','" + p2 + "','" + t1 + "','" + t2 + "','" + l1 + "','" + l2 + "','" + h1 + "','" + h2 + "','" + o1 + "' " );
创建表如下
CREATE TABLE `ac`.`ticker_info` ( `a1` FLOAT NOT NULL , `a2` INT NOT NULL , `a3` FLOAT NOT NULL , `b1` FLOAT NOT NULL , `b2` INT NOT NULL , `b3` FLOAT NOT NULL , `c1` FLOAT NOT NULL , `c2` FLOAT NOT NULL , `v1` FLOAT NOT NULL , `v2` FLOAT NOT NULL , `p1` FLOAT NO
T NULL , `p2` FLOAT NOT NULL , `t1` INT NOT NULL , `t2` INT NOT NULL , `l1` FLOAT NOT NULL , `l2` FLOAT NOT NULL , `h1` FLOAT NOT NULL , `h2` FLOAT NOT NULL , `o1` FLOAT NOT NULL ) ENGINE = InnoDB;
但是,这失败了
ac.cpp: In function ‘int main(int, char**)’:
ac.cpp:445:161: error: invalid operands of types ‘const char [132]’ and ‘float’ to binary ‘operator+’
445 | res = stmt->executeQuery("INSERT INTO `ticker_info`(`a1`,`a2`,`a3`,`b1`,`b2`,`b3`,`c1`,`c2`,`v1`,`v2`,`p1`,`p2`,`t1`,`t2`,`l1`,`l2`,`h1`,`h2`,`o1`) VALUES ('" + a1 + "','" + a2) + "','" + a3 + "','" + b1 + "','" + b2 + "','" + b3 + "','" + c1 + "','" + c2 + "','" + v1 + "','" + v2 + "','" + p1 + "','" + p2 + "','" + t1 + "','" + t2 + "','" + l1 + "','" + l2 + "','" + h1 + "','" + h2 + "','" + o1 + "' " );
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~
| | |
| const char [132] float
我在这里做错了什么?我之前真的需要对浮点值进行字符串化吗?我希望我可以按原样提供类型。我搜索了一段时间以寻找解决方案,但看起来我很愚蠢(可能)或者以前没有人遇到过这个问题(不太可能)。不幸的是,文档对我来说也成功地隐藏了这一点。
解决方案
根据@lucumt 的建议,使用参数标记和绑定值解决了这个问题。
推荐阅读
- python - 使用 Python 的测量协议用法
- python-3.x - re.split() 在解释器中工作,但是在脚本执行时失败。蟒蛇 3
- node.js - Facebook Graph API v10 图像上传到页面提要
- haskell - Haskell:确定数据类型中的参数类型
- javascript - Angular / Javascript窗口pdf预览不起作用
- javascript - 将多个预排序数组合并到一个排序数组中的最快方法
- splunk-query - Splunk 查询 AWS 的活动和非活动 elb 的 http 状态
- php - WooCommerce wc_get_orders() 缓存
- git - 由于“您对以下文件的本地更改将被覆盖”,Git 无法提交
- android-studio - 如何在视图寻呼机中停止媒体播放器声音?