zoukankan      html  css  js  c++  java
  • VC2012链接mySql


    环境设置:

    安装完mysql
    vs中 vc++目录 中 包含目录 D:\DevSoft\MySQL\MySQL Server 5.5\include 这个文件夹
    vc++目录 中 引用目录 D:\DevSoft\MySQL\MySQL Server 5.5\lib 这个文件夹。

    记得把 mysql 安装目录中的include目录下的libmysql.lib 复制到工程文件夹下。

    如果是32位的mysql 可以直接连。 如果是 64,需要 配置 vs x64平台,在配置管理其中,然后连。


    #include "stdafx.h"
    #include <Windows.h>
    #include <string.h>
    #include <mysql.h>
    #include <iostream>
    using namespace std;

    int main()
    {
    const char user[] = "花花的数据库账号"; //username
    const char pswd[] = "花花的数据库密码"; //password
    const char host[] = "localhost"; //or"127.0.0.1"
    const char table[] = "画画的数据库空间"; //database
    unsigned int port = 3306; //server port
    MYSQL myCont;
    MYSQL_RES *result;
    MYSQL_ROW sql_row;
    MYSQL_FIELD *fd;
    char column[32][32];
    int res;
    mysql_init(&myCont);
    if(mysql_real_connect(&myCont,host,user,pswd,table,port,NULL,0))
    {
    cout<<"connect succeed!"<<endl;
    mysql_query(&myCont, "SET NAMES GBK"); //设置编码格式,否则在cmd下无法显示中文
    res=mysql_query(&myCont,"select * from student");//查询
    if(!res)
    {
    result=mysql_store_result(&myCont);//保存查询到的数据到result
    if(result)
    {
    int i,j;
    cout<<"number of result: "<<(unsigned long)mysql_num_rows(result)<<endl;
    for(i=0;fd=mysql_fetch_field(result);i++)//获取列名
    {
    strcpy_s(column[i],fd->name);
    }
    j=mysql_num_fields(result);
    for(i=0;i<j;i++)
    {
    printf("%s\t",column[i]);
    }
    printf("\n");
    while(sql_row=mysql_fetch_row(result))//获取具体的数据
    {
    for(i=0;i<j;i++)
    {
    printf("%s\n",sql_row[i]);
    }
    printf("\n");
    }
    }
    }
    else
    {
    cout<<"query sql failed!"<<endl;
    }
    }
    else
    {
    cout<<"connect failed!"<<endl;
    }
    if(result!=NULL) mysql_free_result(result);//释放结果资源
    mysql_close(&myCont);//断开连接
    system("pause");
    return 0;
    }

     1 #include<iostream>
     2 #include<stack>
     3 using std::cin;
     4 using std::cout;
     5 class STACK
     6 {
     7 public:
     8     int *a;
     9     int number;                
    10 public:
    11     STACK():number(0){a=new int[0];};
    12     STACK(int n):number(n){a=new int[n];};
    13     int&operator[](int key){return a[key];};
    14     int&operator*(){return a[0];}
    15     int * operator+(int i){return (a+i);}
    16     int&at(int n){return a[n];};
    17     int&front(){return a[0];};
    18     int&back(){return a[number-1];};
    19     int* begin()const{return a;};
    20     int* end()const{return (a+number-1);};
    21     int size()const{return number;};
    22     bool empty(){return !number;};
    23     void clear(){delete[]a;};
    24     void top(){resize(number-1);};
    25     ~STACK(){delete[]a;};
    26     void resize(int);
    27     void push_back(int);
    28     void erase(int);
    29     void insert(int*,int);
    30     void reserve(); 
    31 };
    32 void STACK::resize(int size)
    33 {
    34     int *b=new int[size];
    35     for(int i=0;i<number&&i<size;i++)
    36         b[i]=a[i];
    37     delete[]a;
    38     number=size;
    39     a=b;
    40 }
    41 void STACK::push_back(int integer)
    42 {
    43     resize(number+1);
    44     a[number-1]=integer;
    45 }
    46 void STACK::erase(int n)
    47 {
    48     for(int i=n;i<number-1;i++)
    49         a[n]=a[n+1];
    50     resize(number-1);
    51 }
    52 void STACK::insert(int *p,int n)        
    53 {
    54     int m=p-a;
    55     resize(number+1);
    56     for(int i=number-1;i>m;i--)
    57         a[i]=a[i-1];
    58     a[m]=n;
    59 }                            
    60 void STACK::reserve ()
    61 {
    62     for(int i=0;i<number/2;i++)
    63     {
    64         int temp=a[i];
    65         a[i]=a[number-i-1];
    66         a[number-i-1]=temp;
    67     }
    68 }
    69 int main()
    70 {
    71 /*    int i;
    72     STACK stack(5);
    73     for(i=0;i<5;i++)
    74         cin>>stack[i];
    75     for(i=0;i<5;i++)
    76     cout<<*(stack+i)<<" ";
    77     cout<<'\n';
    78     stack.insert (stack.begin()+3,10);
    79     for(i=0;i<6;i++)
    80     cout<<*(stack+i)<<" ";
    81     cout<<'\n';*/
    82 
    83     STACK stack;
    84     stack.push_back (10);
    85     stack.push_back (12);
    86     stack.push_back (14);
    87     cout<<stack.back()<<'\n';
    88     stack.top();
    89     cout<<stack.back()<<'\n';
    90     return 0;
    91 }
     1 #include <stdio.h>
     2 #include <stdlib.h>
     3 #define N 41
     4 #define M 3 
     5 #define START 0
     6  struct stu
     7  {
     8     int data;
     9     struct stu *next;
    10 } LNode[N];
    11 
    12  int main(void)
    13  {
    14     int i;
    15     
    16 struct stu *next,*p, *r;
    17 for (i = 0; i < N; i++)
    18  {
    19 LNode[i].data = i + 1;
    20 if (i < N - 1)
    21 LNode[i].next = &LNode[i + 1];
    22 else
    23 LNode[i].next = LNode;
    24 }
    25 p = &LNode[START];
    26 while(p -> next != p)
    27  {
    28 for (i = 1; i < M ; i++) 
    29 {
    30 r = p;
    31 p = p ->next;
    32 }
    33 r ->next = p -> next;
    34 printf("编号为%d的人出列\n", p -> data);
    35 p = r ->next;
    36 
    37 }
    38 
    39 
    40 getchar();
    41 return 0;
    42 }
  • 相关阅读:
    php_memcache扩展
    window+nginx+php
    服务启动Apache服务,错误Parent: child process exited with status 3 -- Aborting.解决
    PHP文件下载
    gvim
    单车家族 结对项目三
    单车家族 结对项目二
    共享单车 网络定位
    注册页面 android 仿摩拜单车共享单车进度条实现StepView
    结对项目 ——功能结构图
  • 原文地址:https://www.cnblogs.com/herizai/p/3120992.html
Copyright © 2011-2022 走看看