Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

[Dúvida] mysql_fetch_row

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    C / C++ [Dúvida] mysql_fetch_row

    Olá

    Alguém sabe dizer porque o sistema trava quando eu tento usar a função "mysql_fetch_row()" usando MySQL com o Dev-C++ ?

    Código:
    #include <iostream>
    #include <stdlib.h>
    #include <stdio.h>
    #include <windows.h>
    #include <mysql/mysql.h>
    
    
    using namespace std;
    
    int valor = 1;
    int opcaoPesquisarAluno = 1;
    int opcaoAlterarAluno = 1;
    
    char nome[30];
    char matricula[30];
    char telefone[30];
    char queryString[100];
    char queryStringPesquisa[100];
    char mysqlquery[100];
    
    FILE *conteudo;
    FILE *conteudoPesquisaAluno;
    
    int main()
    {
    	char *host = "localhost";
    	char *username = "root";
    	char *password = "root";
    	char *database = "aluno";
    	
    	
    	
    	MYSQL *socket;
    	socket = mysql_init(0);
    	if (socket)
    	{
    		//cout << "socket ok" << endl;
    	}
    	else
    	{
    		//cout << "socket failed" << mysql_error(socket) << endl;
    	}
    	
    	if (mysql_real_connect(socket,host,username,password,database,0,NULL,0))
    	{
    		//cout << "Conexao ok" << endl;
    	}
    	else
    	{
    		//cout << "Conexao falhou" << mysql_error(socket) << endl;
    	}
    	
        while (valor != 4)
        {
    	cout << "\n*******************"
    		 << "\n"
    		 << "1 - Cadastrar Aluno"
    		 << "\n"
    		 << "2 - Pesquisar Aluno"
    		 << "\n"
    		 << "3 - Alterar Aluno"
    		 << "\n"
    		 << "4 - Sair"
    		 << "\n"
    		 << "*******************";
    
        cout << "\nDigite uma opcao: ";
        cin >> valor;
        
        system("cls");
        
        if (valor == 1)
        {
        	conteudo = fopen("file.txt","+a");
        	
        	cout << "\n*******************"
        	     << "\n"
        	     << "Cadastrar Aluno"
        	     << "\n"
        	     << "*******************"
        	     << "\n"
        	     << "Digite o nome do Aluno: ";
        	cin >> nome;
        	
        	cout << "\n"
        		 << "Digite a matricula do Aluno: ";
        	cin >> matricula;
        	
        	cout << "\n"
        	     << "Digite o telefone do Aluno: ";
        	cin >> telefone;
        	
        	fprintf(conteudo,"INSERT INTO aluno(nomeALuno,matricula,telefone) values ('%s','%s','%s');\n",nome,matricula,telefone);
        	fclose(conteudo);
        	
        	conteudo = fopen("file.txt","r");
        	fgets(queryString,100,conteudo);
        	fclose(conteudo);
        	
        	//cout << queryString;
        	
        	mysql_query(socket,queryString);	
    		
        	//cout << mysql_error(socket);
        	
        	system("cls");
        }
        
        if (valor == 2)
        {
        	while(opcaoPesquisarAluno != 3)
        	{
        		
        	cout << "\n*******************"
        	     << "\n"
        	     << "Pesquisar Aluno"
        	     << "\n"
        	     << "*******************"
        	     << "\n"
        	     << "1 - Pesquisar pelo nome do Aluno"
        	     << "\n"
        	     << "2 - Pesquisar pela matricula do Aluno"
        	     << "\n"
        	     << "3 - Voltar ao Menu Principal";
            
            cout << "\nDigite uma opcao: ";
            cin >> opcaoPesquisarAluno;
            
        	if (opcaoPesquisarAluno == 1)
        	{
        	   conteudoPesquisaAluno = fopen("filePesquisa.txt","+a");
        	   
        	   cout << "\nDigite o Nome do Aluno: ";
        	   cin >> nome;
        	   
        	   fprintf(conteudoPesquisaAluno,"SELECT * FROM aluno WHERE nome == '%s');\n",nome);
        	   
    		   fgets(queryStringPesquisa,100,conteudoPesquisaAluno); 
    		   
    		   mysql_query(socket,queryStringPesquisa);
        	   
        
        	   MYSQL_RES * res = mysql_store_result(socket);
        	   fclose(conteudoPesquisaAluno);
        	   
        	   //conteudoPesquisaAluno = fopen()
        	   
        	   //int numColumns = mysql_num_fields(res);
        	   
        	   MYSQL_ROW row;
        	   
        	   //cout << mysql_fetch_row(res);
        	   
        	   row = mysql_fetch_row(res);
        	   //cout << row[0];
        	   //cout << row[1];
        	   
        	   // mysql_fetch_row retorna um array caso positivo ou retorna FALSE caso nao tenha mais linhas
        	   /*while((row = mysql_fetch_row(res)) != FALSE)
        	   {
        	   	  for(int x=0; x < 3; x++)
        	   	  {
        	      cout << "nome aluno: " << row[0];
    			  cout << "matricula aluno: " << row[0];
    			  cout << "telefone: " << row[0];
    		      }
        	   } */
        	   mysql_free_result(res); 
        	   cout << "teste";
        	   //conteudoPesquisaAluno = fopen("filePesquisa.txt","r");
        	   
        	   
        	   
        	   
        	   //cout << queryStringPesquisa;
        	   
        	   
        	   
        	   system("PAUSE");
        	   
        	   system("cls");
        	}
        	
        	if (opcaoPesquisarAluno == 2)
        	{
        	   cout << "\nDigite a matricula do Aluno: ";
        	   cin >> matricula;
        	   system("cls");
            }
        	
        	if (opcaoPesquisarAluno == 3)
        	{
        		system("cls");
        		valor = 1;
        		opcaoPesquisarAluno = 1;
        		break;
        	}
            }
        }
        if (valor == 3) 
        {   
           while (opcaoAlterarAluno != 3)
           {
              cout << "\n*******************"
        	       << "\n"
        	       << "Alterar Aluno"
        	       << "\n"
        	       << "*******************"
        	       << "\n"
        	       << "1 - Pesquisar pelo nome do Aluno"
        	       << "\n"
        	       << "2 - Pesquisar pela matricula do Aluno"
        	       << "\n"
        	       << "3 - Voltar ao Menu Principal";
        	     
              cout << "\nDigite uma opcao: ";
        	  cin >> opcaoAlterarAluno;
        	  
        	  if (opcaoAlterarAluno == 1)
        	  {
        	     cout << "\nDigite o nome do Aluno: ";
        	     cin >> nome;
        	  }
        	  if (opcaoAlterarAluno == 2)
        	  {
        	  	 cout << "\nDigite a matricula do Aluno: ";
        	  	 cin >> matricula;
        	  }
        	  if (opcaoAlterarAluno == 3)
        	  {
        	  	 valor = 1;
        	  	 opcaoAlterarAluno = 1;
        	  	 system("cls");
        	  	 break;
        	  }
        	  system("cls");
           }
        }
    	}
        return 0;
    }
    Similar Threads
X
Working...
X