下面贴出我在实际工作中遇到mysql操作数据表的sql命令,如有不对的地方,请多指教:

  1. c++链接mysql头文件命令
  2. g++ is_in_polygon.cpp -o is_in_polygon -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
  3.  
  4. eclipse 设置mysql
  5. project->setting->properties->tool settings->libraries-libraries(l) write into:mysqlclient. project->properties->tool settings->libraries->libraries search path write into:/usr/lib/mysql.
  6. project->properties->c/c++ build->environment->cplus_include_path and c_include_path 加入:/usr/include/mysql
  7.  
  8. 建立数据表
  9. use test;
  10. create table test_info (
  11. id integer not null,
  12. content varchar(64) not null,
  13. primary key (id)
  14. );
  15.  
  16. delete from test_info;
  17. insert into test_info values (2010, 'hello, line
  18. suped
  19. seped
  20. "end'
  21. );
  22.  
  23. 向数据表导入数据
  24. load data local infile '/tmp/test.csv' into table test_info fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by '\r\n';
  25.  
  26. 增加列
  27. alter table t_icf_day add new_field_id int(5);
  28. alter table t_icf_day add column day_id BIGINT primary key auto_increment;
  29.  
  30. 设主键
  31. alter table userinfo add prmariy key (userId);
  32.  
  33. 删除表
  34. drop table
  35. drop table if exits '%s_T_ICF_HIST_DATE'
  36.  
  37. 删除列
  38. alter table t2 drop column c;
  39.  
  40. 查找不重复的数据
  41. insert into T_ICF_HIST_D select a.* from China_t_icf_hist_d a,(select c_gouki,c_kisyu,count(*) from %s_T_ICF_DAY group by c_gouki,c_kisyu having count(*)>=1) as b where a.c_gouki=b.c_gouki and a.c_kisyu=b.c_kisyu;",
  42.  
  43. 重命名列
  44. alter table t1 change a b integer;
  45.  
  46. 改变列的类型
  47. alter table t1 change b b bigint not null;
  48. alter table infos change list list tinyint not null default '0';
  49.  
  50. 重命名表
  51. alter table t1 rename t2;
  52.  
  53. 多表查询
  54. select c.nom, e.nom from consultant c, affaire a, besoin b, salarie sa, site s, entreprise e
  55. where c.consultant_id=a.consultant_id and a.besoin_id=b.besoin_id and b.salarie_id=sa.salarie_id and sa.site_id=s.site_id and s.entreprise_id=e.entreprise_id
  56.  
  57. 插入符合条件的列
  58. insert into gansu_icf_hist_d select b.* from gansu_t_icf_day a, T_ICF_HIST_D b where a.c_kisyu=b.c_kisyu and a.c_gouki=b.c_gouki;
  59. insert into gansu_day select a.* from t_icf_day a, gansu_gis_convert_result b where a.d_hassei=b.d_hassei and a.c_gouki=b.c_gouki;
  60.  
  61. 查询后,插入表中
  62. insert into gansu_gis_convert_result SELECT * FROM t_gis_convert_result_icf_other where nv_place='GANSU, China';
  63.  
  64. 向表中添加数据
  65. 1 insert into employee values (’200301’,’zhangsan’,’m’,’1978/5/8’);
  66. 2 insert into employee values (’200302’,’lisi’,’f’,’1973/3/20’);
  67.  
  68. 创建索引
  69. 1 create table test1 (test1_id char(4),name char(20), index idx_test1(name(10)));
  70. 2 create index idx_employee on employee(name); 用create为name列创建索引
  71.  
  72. 察看索引
  73. 1 show index from employee;
  74. 2 show index from products;
  75.  
  76. 删除索引
  77. drop index idx_employee on employee;
  78. alter table products drop index idx_products;
  79.  
  80. 查看代码
  81. select * from gansu_day group by c_kisyu and d_hassei and c_gouki having count(*) > 1;
  82.  
  83. 多表查询
  84. insert into yunnan_gis_convert_result SELECT * FROM t_gis_convert_result_icf_AWS where nv_place='YUNNAN, China' union all
  85. SELECT * FROM t_gis_convert_result_icf_AXA_AWU where nv_place='YUNNAN, China' union all SELECT * FROM t_gis_convert_result_icf_other where nv_place='YUNNAN, China';
  86. insert into LIAONING_T_ICF_HIST_D select a.* from China_t_icf_hist_d a,(select c_gouki,c_kisyu,count(*) from LIAONING_T_ICF_DAY group by c_gouki,c_kisyu having count(*)>=1) as b where a.c_gouki=b.c_gouki and a.c_kisyu=b.c_kisyu;
  87.  
  88. 远程访问数据库 http://hi.baidu.com/andycai/blog/item/5c8dabcc97fa931701e9281f.html
  89. http://blog.csdn.net/uixor_/article/details/6762194

其实直接看mysql的syntax就可以,不过没有这样直观。

下面给出c++链接mysql语句

  1. MYSQL_RES *Querysql(char *sql) {
  2. MYSQL_RES *res;
  3. MYSQL_ROW row;
  4. char *server = "localhost";/*服务器名*/
  5. char *user = "root";/*用户名*/
  6. char *password = ""; /* 此处改成你的密码 */
  7. char *database = "EserviceDB";/*数据库名*/
  8. MYSQL *conn = mysql_init(NULL);
  9. /* Connect to database */
  10. if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
  11. fprintf(stderr, "%s\n", mysql_error(conn));
  12. return res;
  13. }
  14. /* send SQL query */
  15. if (mysql_query(conn, sql)) {//sql语句
  16. fprintf(stderr, "%s\n", mysql_error(conn));
  17. return res;
  18. }
  19. res = mysql_store_result(conn);//保存查询结果
  20. mysql_close(conn);
  21. return res;
  22. }

这个函数主要用来链接数据库,返回带有数据格式为:MYSQL_RES,主要用于查询操作:

  1. void NoQuery(char *sql) {
  2. MYSQL_RES *res;
  3. MYSQL_ROW row;
  4. char *server = "localhost";/*服务器名*/
  5. char *user = "root";/*用户名*/
  6. char *password = ""; /* 此处改成你的密码 */
  7. char *database = "EserviceDB";/*数据库名*/
  8. MYSQL *conn = mysql_init(NULL);
  9. if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
  10. fprintf(stderr, "%s\n", mysql_error(conn));
  11. printf("the connection fail!");
  12. }
  13. if (mysql_query(conn, sql)) {//sql语句
  14. fprintf(stderr, "%s\n", mysql_error(conn));
  15. printf("the query fail!");
  16. } else
  17. printf("query insert sql sucess");
  18. mysql_close(conn);
  19. }

MySQL 常用命令大全2的更多相关文章

  1. MySQL 常用命令大全

    Mysql常用命令行大全 第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键 ...

  2. mysql常用命令大全 mysql常用命令总结

    原文地址:http://www.jbxue.com/db/12472.html 本文介绍下,mysql中常用的一些命令,包括创建与修改数据库.数据库中的表,mysql的权限管理命令grant.revo ...

  3. Mysql常用命令大全 sql

    1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...

  4. MySQL常用命令大全(转)

    下面是我们经常会用到且非常有用的MySQL命令.下面你看到#表示在Unix命令行下执行命令,看到mysql>表示当前已经登录MySQL服务器,是在mysql客户端执行mysql命令. 登录MyS ...

  5. Mysql常用命令大全

    1.连接Mysql 格式: mysql ­h主机地址 ­u用户名 -p用户密码 2.1 创建数据库 命令:create database <数据库名> 例1:建立一个名为xhkdb的数据库 ...

  6. [批处理教程之MySQL]001.MySQL 常用命令大全

    连接MySQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MySQL 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p ...

  7. php开发面试题---Mysql常用命令行大全

    php开发面试题---Mysql常用命令行大全 一.总结 一句话总结: 常见关键词:create,use,drop,insert,update,select,where ,from.inner joi ...

  8. Ubuntu常用命令大全 以及 PHP+MySQL代码部署在Linux(Ubuntu)上注意事项

    PHP+MySQL代码部署在Linux(Ubuntu)上注意事项 https://cloud.tencent.com/developer/article/1024187 Ubuntu常用命令大全 ht ...

  9. Ubuntu常用命令大全(转)

    点评:Ubuntu常用命令大全,学习ubuntn系统的朋友可以收藏下,用ctrl+F查找即可 一.文件/文件夹管理 ls 列出当前目录文件(不包括隐含文件) ls -a 列出当前目录文件(包括隐含文件 ...

随机推荐

  1. 关于WebBrowser(浏览器)控件的调用

    原文:关于WebBrowser(浏览器)控件的调用 在VS.NET2002和2003中,要应用WebBrowser(浏览器)控件,得用InterOp,刚开始用的时候很正常,后来不知道为什么窗口一打开就 ...

  2. 下载的youtube视频

    youtube 视频下载方法[详解]   1.打开网址: http://kej.tw/flvretriever/. 2.输入要下载的youtube视频的网址. 3.点击右侧RETRIEVE NOW ! ...

  3. 导出DBF,并且提供下载 .

    原文:导出DBF,并且提供下载 . 导出DBF,并且提供下载 #region Declare string mFilePath = MapPath("../DataTmp/");  ...

  4. JavasScript实现调查问卷插件

    原文:JavasScript实现调查问卷插件 鄙人屌丝程序猿一枚,闲来无事,想尝试攻城师是感觉,于是乎搞了点小玩意.用js实现调查问卷,实现了常规的题型,单选,多选,排序,填空,矩阵等. 遂开源贴出来 ...

  5. 让Windows 8 / 8.1 以及 Windows Server 2012 / 2012 R2的桌面,显示我的电脑图标

    cmd ->  运行[rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0],然后勾上[我的电脑]即可.

  6. 实现关闭ssh继续实施方案---tmux

    问题1:为什么ssh一个关闭.不再执行的程序 罪魁祸首:SIGHUP 信号 让我们来看看为什么关掉形式/断开将使程序被执行死. 在Linux/Unix在.有几个概念: 进程组(process grou ...

  7. .NET源代码的内部排序实现

    使用JetBrains的DotPeek工具能够方便地查看.net的部分源代码.于是看了一下.NET的内部是怎样实现排序的算法. 在System.Collections.Generic 命名空间下能够看 ...

  8. SQL点滴12—SQL Server备份还原数据库中的小把戏

    原文:SQL点滴12-SQL Server备份还原数据库中的小把戏 备份数据库时出现一个不太了解的错误 ,错误信息“is formatted to support  1 media families, ...

  9. 使用TeamCity对项目进行可持续集成管理

    使用TeamCity对项目进行可持续集成管理 一.可持续集成管理   持续集成,CI:即Continuous integration. 可持续集成的概念是基于团队(小组)协作开发而提出来的,为了提高团 ...

  10. 系统预定义委托与Lambda表达式

    NET中那些所谓的新语法之三:系统预定义委托与Lambda表达式   开篇:在上一篇中,我们了解了匿名类.匿名方法与扩展方法等所谓的新语法,这一篇我们继续征程,看看系统预定义委托(Action/Fun ...