MYSQL 操作简介
来源:互联网 发布:长虹乐视网络电视报价 编辑:程序博客网 时间:2024/05/19 17:51
//Cmake
include_directories("C:/msys64/mingw64/include/mysql")target_link_libraries(MySQL_testall mysqlclient)
#include <iostream>#include "mysql_manager.h"#include <sstream>#include <algorithm>int main(){ mysql_manager::getinstance().init(1, 100, "localhost", "root", "root", "test", 3306, NULL, 0); auto m_sql = &*mysql_manager::getinstance().get_connect(); mysql_query(m_sql, "CREATE TABLE TAB3(ID INT PRIMARY KEY AUTO_INCREMENT NOT NULL," "TIME DATETIME,TITLE VARCHAR(128) NOT NULL,ARTICLE TEXT NOT NULL)"); //mysql_query(m_sql, "INSERT INTO TAB3 (TIME,TITLE,ARTICLE) VALUES(NOW(),\"First Article\",\"hello we are the world \")"); //mysql_query(m_sql, "INSERT INTO TAB3 (TIME,TITLE,ARTICLE) VALUES(NOW(),\"Second Article\",\"hello we are the world ! I am weifuliang .\")"); //mysql_query(m_sql,"SELECT * FROM TAB2"); //mysql_query(m_sql,"SELECT * FROM TAB3"); std::stringstream ss_query; std::string str_title, str_article, str_id; str_title = "weifuliangsucuihuang"; str_article = "12341234123412341234"; str_id = "2"; ss_query << "UPDATE TAB3 SET TIME=NOW(),TITLE='" << str_title << "',ARTICLE='" << str_article << "'WHERE ID='"<< str_id << "'" ; mysql_query(m_sql,ss_query.str().c_str()); mysql_query(m_sql,"SELECT * FROM TAB3"); //std::shared_ptr<MYSQL> m_sql= mysql_manager::getinstance().get_connect(); //mysql_query(&(*m_sql),"CREATE TABLE COMPANY(ID INT PRIMARY KEY NOT NULL, ARTICLE TEXT NOT NULL)"); //mysql_query(&(*m_sql),"INSERT INTO COMPANY VALUES(1,\"Hello world! I am weifuliang.\")"); //mysql_query(&(*m_sql),"DELETE FROM COMPANY WHERE ID = 1"); //mysql_query(&(*m_sql),"SELECT ARTICLE FROM COMPANY");// mysql_query(m_sql,// "CREATE TABLE LOGIN(ID INT PRIMARY KEY NOT NULL, USERNAME VARCHAR(32) NOT NULL,PASSWORD VARCHAR(32) NOT NULL)");// mysql_query(m_sql, "INSERT INTO LOGIN VALUES(1,\"123@qq.com\",\"123123\")");// std::string str_name = "123@qq.com", str_password = "123123", str_query;// str_query = "SELECT USERNAME,PASSWORD FROM LOGIN WHERE USERNAME='" + str_name + "'AND PASSWORD='" + str_password + "'";// mysql_query(&(*m_sql), str_query.c_str());// std::ostringstream sstream; //#include <sstream>// sstream<<"SELECT USERNAME,PASSWORD FROM LOGIN WHERE USERNAME='"<<str_name<<"'AND'"<<str_password<<"'";// mysql_query(&(*m_sql),sstream.str().c_str()); //mysql_query(&(*m_sql),"CREATE table tb2(NAME VARCHAR(20),AGE INT(3))"); //mysql_query(&(*m_sql), "SELECT ID AS NAMWID FROM tb"); //列名的替换 //mysql_query(&(*m_sql), "SELECT concat(id,name) from tb"); //concat 用于连接字符串 //mysql_query(&(*m_sql), "SELECT left(name,3) from tb"); //left 用于显示字符串的前几个字符 //mysql_query(&(*m_sql), "SELECT right(name,3) from tb"); //right 用于显示字符串的后面个字符包括空格// mysql_query(&(*m_sql), "SELECT upper(name) from tb"); //upper 用于显示字符串转换成大写 //mysql_query(&(*m_sql), "SELECT lower(name) from tb"); //lower 用于显示字符串转换成小写 // mysql_query(&(*m_sql), "SELECT substring(name,2,4) from tb"); //substring 用于显示字符串从第几个到第几个 //mysql_query(&(*m_sql), "SELECT LTRIM(name) from tb"); //LTRIM 用于删除字符串前面的空格 //mysql_query(&(*m_sql), "SELECT RTRIM(name) from tb"); //RTRIM 用于删除字符串后面的空格 //mysql_query(&(*m_sql), "SELECT NOW()"); //NOW 用于查看系统时间 //mysql_query(&(*m_sql), "SELECT date_format('2017-8-9','%d')"); //date_format 显示当月的第几天// mysql_query(&(*m_sql), "SELECT DATEDIFF(NOW(),'2016-3-5')"); //DATEDIFF 用于求某一时间段的天数 //mysql_query(&(*m_sql), "SELECT round(123.123456789,3)"); //round 用于求某数据的精确度 保留几位小数 //mysql_query(&(*m_sql), "SELECT round(123.123456789,-1)"); //round 用于求某数据的精确度 保留几位小数 负数代表小数点左半边的 // mysql_query(&(*m_sql), "SELECT round(pi(),3)"); //round 用于求某数据的精确度 保留几位小数 pi() 代表无理数pi 3.14... // mysql_query(&(*m_sql), "SELECT round(PI(),100)"); //round 用于求某数据的精确度 保留几位小数 pi 最多保留小数点后15位 //mysql_query(&(*m_sql), "SELECT power(2,10)"); //power 用于求某数据的次幂运算 如2的10次幂 //mysql_query(&(*m_sql), "SELECT CAST('123' AS int)"); //CAST 用于转换数据类型 但是可能在wondows 上不好使 不知道为啥 可略过哦 //mysql_query(&(*m_sql), "INSERT INTO tb VALUES(100,NULL,33)"); //mysql_query(&(*m_sql), "SELECT IFNULL(NAME,'noname') AS name FROM tb"); //IFNULL用来填充一些null的值进行一系列的替换 //mysql_query(&(*m_sql), "SELECT NAME FROM tb ORDER BY NAME"); // (列名 ORDER BY 列名 ) 排序 默认升序(ASC) 降序(DESC) //mysql_query(&(*m_sql), "SELECT NAME FROM tb ORDER BY ID,NAME "); // (列名 ORDER BY 列名 firstname,endname) 排序 默认升序(ASC) 降序(DESC) MYSQL_RES *result = mysql_store_result(m_sql); if(!mysql_num_rows(result)) { std::cout << "Can't find ! "<< std::endl; } MYSQL_ROW row; unsigned int num_fields; //这是代表列数 unsigned int i; num_fields = mysql_num_fields(result); //获取列数 MYSQL_FIELD *fiedl = mysql_fetch_fields(result); //MYSQL_FIELD_OFFSET file_offset = mysql_field_tell(result); for (int i = 0; i < num_fields; ++i) { std::cout << fiedl[i].name << " "; } std::cout << std::endl; while ((row = mysql_fetch_row(result))) //从结果集中捕获一行,给row { unsigned long *lengths; lengths = mysql_fetch_lengths(result); //返回结果集当前行的列长度;返回的ulong* 指针 std::string str_;// for (i = 0; i < num_fields; i++)// {//// str_ += row[i];// std::cout << "row[ " << i<< " ] :" << row[i]<< std::endl;// } //std::cout << "str__ :" << str_ << std::endl; for (i = 0; i < num_fields; i++) { printf("%.*s ", (int) lengths[i], row[i] ? row[i] : "NULL"); //根据每个列长度输出对应行值 } printf("\n"); } mysql_free_result(result); //释放结果集;// MY_CHARSET_INFO cs;// mysql_get_character_set_info(&*m_sql, &cs);// //std::cout<<__CONCAT("as","asd")<<std::endl;// std::cout << mysql_get_client_info() << std::endl; return 0;}
阅读全文
0 0
- Mysql 分区操作简介
- Mysql 分区操作简介
- MYSQL 操作简介
- php操作mysql函数简介
- c语言操作mysql 简介
- c语言操作mysql 简介
- Qt操作MySQL基础简介
- Python操作MySQL-(1)简介
- MySQL基础简介与操作
- Python操作Mysql使用简介
- 【MySQL】MySQL数据库简介+基本操作
- MySQL数据库简介以及初步操作总结
- Mysql的视图简介与操作
- Mysql存储过程简介与操作
- jdbc操作mysql数据库_接口简介
- mysql binlog日志简介及操作详解
- mysql对表是操作以及函数的简介
- mysql 简介
- IT技术人员的工作需要了解的方法论
- 程序设计中的数学思维函数总结(代码以C#为例)
- 《机器学习实战》和Udacity的ML学习笔记之神经网络
- LeetCode_ 657. Judge Route Circle
- Spring分配置文件开发
- MYSQL 操作简介
- unity3d UI列表预制体循环利用,刷新数据
- Tomcat内存溢出的三种情况及解决办法分析
- 双系统(Linux + Windows)下时间不一致问题解决方法
- Python学习(sys.argv函数精简概括)
- HDU 1358 Period(KMP+next数组的运用)
- linux 权限 chmod u+x
- alsa的 snd_pcm_readi 和 snd_pcm_writei
- Javascript性能优化(一)