热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

C++对MySQL数据库进行导出和导入操作

相信大家应该在网上看到很多利用SQL语句对MySQL数据库的表或者数据库本身进行导出和导入操作。在window环境下利用dos命令行导出数据库(我的mysq直接装在c

相信大家应该在网上看到很多利用SQL语句对MySQL数据库的表或者数据库本身进行导出和导入操作。在window环境下利用dos命令行导出数据库(我的mysq直接装在c盘根目录下下,其bin目录为:c:/mysql/bin):

1、执行MySQL数据库导出操作:

c:\mysql\bin>mysqldump -uroot -proot code_command > c:/code_command

2、导入Mysql数据库操作:

常用source 命令。进入mysql数据库控制台,如:mysql -u root -p ;mysql>use code_command ;然后使用source命令,后面参数为脚本文件(如这里用到的.sql):mysql>source c:/code_command.sql

最近在MFC环境下开发需要将导入和导出功能集成到应用程序中,查询了mysql的官方API,我没有找到对应的接口,查询了 hellokandy写的博客(https://blog.csdn.net/hellokandy/article/details/80497234),也没有找到对应的接口,因此采取利用c++调用dos窗口利用sql命令实现该功能,具体代码如下:

//导出数据库
void CDlgUserMangement::OnBtnExportSQL()
{//WinExec("cmd /c C:/mysql/bin/mysqldump.exe -hlocalhost -uroot -proot code_command > c:/q/bb.sql",SW_NORMAL);// TODO: 在此添加控件通知处理程序代码CString strFile="";CFileDialog dlgFile(TRUE,_T("*.sql"),NULL,OFN_HIDEREADONLY,_T("SQL File(*.sql)|*.sql"),NULL);if (IDOK==dlgFile.DoModal()){strFile=dlgFile.GetPathName();CString cmdSQL="cmd /c C:/mysql/bin/mysqldump.exe -hlocalhost -uroot -proot code_command > "+strFile;WinExec(cmdSQL,SW_HIDE);//SW_HIDE 不闪MessageBox("数据库导出成功!","提示");}}//导入数据库
void CDlgUserMangement::OnBtnImportSQL()
{char cmdstr[1000];char path[1024];FILE *f;CString strFile &#61; "";CFileDialog dlgFile(true,_T("*.sql"),NULL,OFN_HIDEREADONLY,_T("SQL File(*sql)|*.sql"),NULL);if (dlgFile.DoModal() &#61;&#61; IDOK){strFile &#61; dlgFile.GetPathName();sprintf(cmdstr,"&#64;echo off\n");strcpy(path,"set str&#61;\"C:\\mysql\\bin\\\"\n");sprintf(cmdstr,"%s%s\n",cmdstr,path);sprintf(cmdstr,"%s%s\n",cmdstr,"%str%mysql.exe -h localhost -uroot -proot code_command <"&#43;strFile&#43;"\n");f &#61; fopen("c:\\mysql\\bin\\tmp.bat","w");fprintf(f,"%s",cmdstr);fclose(f);//WinExec("tmp.bat",SW_HIDE);//SW_HIDE 不闪ShellExecute(NULL,_T("open"),_T("c:\\mysql\\bin\\tmp.bat"),_T(""),NULL,SW_HIDE);//system("tmp.bat");remove("tmp.bat");MessageBox("数据库导入成功&#xff01;","提示");}
}

 


推荐阅读
  • 本文介绍了如何使用elementui分页组件进行分页功能的改写,只需一行代码即可调用。通过封装分页组件,避免在每个页面都写跳转请求的重复代码。详细的代码示例和使用方法在正文中给出。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • MySQL语句大全:创建、授权、查询、修改等【MySQL】的使用方法详解
    本文详细介绍了MySQL语句的使用方法,包括创建用户、授权、查询、修改等操作。通过连接MySQL数据库,可以使用命令创建用户,并指定该用户在哪个主机上可以登录。同时,还可以设置用户的登录密码。通过本文,您可以全面了解MySQL语句的使用方法。 ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • Echarts图表重复加载、axis重复多次请求问题解决记录
    文章目录1.需求描述2.问题描述正常状态:问题状态:3.解决方法1.需求描述使用Echats实现了一个中国地图:通过选择查询周期&#x ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • http:my.oschina.netleejun2005blog136820刚看到群里又有同学在说HTTP协议下的Get请求参数长度是有大小限制的,最大不能超过XX ... [详细]
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • springboot项目引入jquery浏览器报404错误的解决办法
    本文介绍了在springboot项目中引入jquery时,可能会出现浏览器报404错误的问题,并提供了解决办法。问题可能是由于将jquery.js文件复制粘贴到错误的目录导致的,解决办法是将文件复制粘贴到正确的目录下。如果问题仍然存在,可能是其他原因导致的。 ... [详细]
  • 本文介绍了在wepy中运用小顺序页面受权的计划,包含了用户点击作废后的从新受权计划。 ... [详细]
  • 本文介绍了如何使用vue-awesome-swiper组件,包括在main.js中引入和使用swiper和swiperSlide组件,以及设置options和ref属性。同时还介绍了如何在模板中使用swiper和swiperSlide组件,并展示了如何通过循环渲染swipes数组中的数据,并使用picUrl属性显示图片。最后还介绍了如何添加分页器。 ... [详细]
  • 如何用JNI技术调用Java接口以及提高Java性能的详解
    本文介绍了如何使用JNI技术调用Java接口,并详细解析了如何通过JNI技术提高Java的性能。同时还讨论了JNI调用Java的private方法、Java开发中使用JNI技术的情况以及使用Java的JNI技术调用C++时的运行效率问题。文章还介绍了JNIEnv类型的使用方法,包括创建Java对象、调用Java对象的方法、获取Java对象的属性等操作。 ... [详细]
author-avatar
looloSam
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有