Dúvida sobre erro ao usar C com MySQL [RESOLVIDO]

1. Dúvida sobre erro ao usar C com MySQL [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 14/05/2010 - 19:15h

Opa, beleza galera ?
Eu to fazendo um programinha simples e bobo em C, que envolve o SQL (SGBD: MySQL). Eu já instalei a biblioteca, e tal só que estou tendo um erro ao compilar. Segue meu código e o erro:

Código:

//----------------------

#include <stdio.h>
#include <mysql/mysql.h>

void main(void)
{
int opc;
MYSQL conexao;

mysql_init(&conexao);
if ( mysql_real_connect(&conexao, "localhost", "root", "root", "cadastro", 0, NULL, 0) )
{
printf("conectado com sucesso!\n");
else
{
printf("Falha de conexao\n");
printf("Erro %d : %s\n", mysql_errno(&conexao), mysql_error(&conexao));
}

printf("SELECIONE UMA OPCAO: "
"\n[1] Inserir"
"\n[2] Buscar"
"\n[3] Remover "
"\n> ");
scanf("%d",&opc);
getchar();

switch(opc){

case 1:

mysql_query(&conexao,"INSERT INTO usuarios(nome, sexo) values('Andre Junior', 'M');");

break;

case 2:

mysql_query(&conexao,"SELECT * FROM usuarios;");

break;

case 3:

mysql_query(&conexao,"DROP usuarios;");

break;

}
mysql_close(&conexao);
}
return (0);
}

//----------------------

E o erro que eu recebo é:

junior@junior:~$ gcc quad.c -o bd -lmysqlclient
quad.c: In function ‘main’:
quad.c:13: error: expected ‘}’ before ‘else’
quad.c: At top level:
quad.c:50: error: expected identifier or ‘(’ before ‘return’
quad.c:51: error: expected identifier or ‘(’ before ‘}’ token


Alguém saberia me informar onde está o erro ? Brigadim... :D


  


2. MELHOR RESPOSTA

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 14/05/2010 - 19:32h

if ( mysql_real_connect(&conexao, "localhost", "root", "root", "cadastro", 0, NULL, 0) )
{
printf("conectado com sucesso!\n");
...
quad.c:13: error: expected ‘}’ before ‘else’
Só precisa colocar o "fecha chave" nesse if() ou retirar o "abre chave" você decide :P

...
mysql_close(&conexao);
}
quad.c:51: error: expected identifier or ‘(’ before ‘}’ token
Apenas retire o '}'

O último erro é aqui, o retorno de main():
void main(void){
...
return (0);
}

Valeu!



3. Re: Dúvida sobre erro ao usar C com MySQL [RESOLVIDO]

Ricardo Cardoso
ricardo cardoso

(usa Debian)

Enviado em 14/05/2010 - 19:28h

Faz tempo que não faço nada em C, mas vamos lá.

Pelo o que estou reparando... tira o ; antes do else.


4. Re: Dúvida sobre erro ao usar C com MySQL [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 14/05/2010 - 19:29h

Não entendi... antes do else eu só tenho o printf(), que precisa do ;


5. Re: Dúvida sobre erro ao usar C com MySQL [RESOLVIDO]

André
andrezc

(usa Debian)

Enviado em 14/05/2010 - 19:52h

Samuel, tu é fod* cara! Consegui agora :D

Brigadão aí :)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts