当前位置:Gxlcms > 数据库问题 > Linux下实现Mysql开发环境的部署和数据库程序的实现

Linux下实现Mysql开发环境的部署和数据库程序的实现

时间:2021-07-01 10:21:17 帮助过:25人阅读

create database MySQL 2 (Sno char(20) primary key, 3 Sname char(20) NOT NULL, 4 sage smallint, 5 sGdener char(2) check(sGender inM,F) 6 ); View Code

好,这就建立了一个简单的数据库,现在导入我们对数据库的简单程序,注意这里的程序和刚才新建立的表使用的码是不一样的。

额外注意的是,这里使用了sprintf实现了对sql变量的查询。

令人头疼的是,在编译的过程中始终提示找不到数据库头文件,这里采用这样的编译命令来执行

g++ sql2.cpp `mysql_config --cflags --libs` -o sql2

  下面是程序的主体部分

#include <cstdio>
#include <mysql.h>
#include<iostream>
#include<string.h>
using namespace std;


//本程序在centos6.5中测试通过,如需测试,把2000万数据数据导入名为test的数据库中后尝试

//这是编译命令,直接复制粘贴即可
//g++ sql2.cpp `mysql_config --cflags --libs` -o sql2

//运行前先要安装mysql-devel库

//create database test (name vchar(200),numb int(20));
int main()
{
    MYSQL conn;
    int res;
    char sql_insert[200]; 
    int *name;
    int numb;
    MYSQL_RES *res_ptr;
    MYSQL_ROW result_row;
    MYSQL_FIELD *field;
    int row;
    int column;
    int i,j;
    string name;
    //cin >>name;
    cin>>numb;
    cin>>name;
    sprintf(sql_insert, "SELECT distinct *  FROM cdsgus where Ctfid=%d Name=‘%s‘ ", numb,name);
    mysql_init(&conn);
    if(mysql_real_connect(&conn,"localhost","root","","test",0,NULL,CLIENT_FOUND_ROWS)) 
    {
        printf("connect success!\n");
        //mysql_query(&conn,"insert into test values(‘user‘,‘123456‘)");
        res=mysql_query(&conn, sql_insert);
        if(res)
            return(0);
        else {
            res_ptr = mysql_store_result(&conn);
                if(res_ptr){
                    column = mysql_num_fields(res_ptr);
                    row = mysql_num_rows(res_ptr) + 1;
                    printf("there is %lu line \n", row);
                    for (i = 0; field = mysql_fetch_field(res_ptr); i++)
                        printf("%s\t", field->name);
                    printf("\n");
                }
             for (i = 1; i < row; i++)
            {
            result_row = mysql_fetch_row(res_ptr);//这里res_ptr实际上相当于游标
            for (j = 0; j < column; j++)
            printf("%s\t", result_row[j]);
            printf("\n");  
            }  
        }
    }
    mysql_close(&conn);     
    return 0;
}

 

Linux下实现Mysql开发环境的部署和数据库程序的实现

标签:connect   display   hid   printf   需要   data   value   adb   stream   

人气教程排行