Usando mysql na linguagem c

Disponível somente no TrabalhosFeitos
  • Páginas : 8 (1973 palavras )
  • Download(s) : 0
  • Publicado : 10 de maio de 2011
Ler documento completo
Amostra do texto
Usando MySQL na linguagem C [Artigo]

Page 1 of 9

Usando MySQL na linguagem C
Autor: Ricardo Rodrigues Lucca Data: 07/08/2003 Introdução Este é um artigo que visa demonstrar como podemos usar a linguagem C para realizar as ações básicas em um banco de dados MySQL. As ações básicas num banco de dados MySQL são: inserção; remoção; alteração e; consulta de dados Assim, seria recomendávelpossuir alguma experiência na linguagem SQL. Inicie, criando um banco de dados chamado "teste" e crie um usuário para acessar esse BD. No caso aqui criarei um usuário chamado "guest" com a senha "guest", depois criaremos uma tabela chamada "aprendendo". Abaixo estão os comandos para você fazer isso no console ou no rxvt (se quiser usar o gráfico): 01 $ mysql --user=root -p 02 Enter password: 03Welcome to the MySQL monitor. Commands end with ; or \g. 04 Your MySQL connection id is 8 to server version: 3.23.51-log 05 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. 06 mysql> create database teste; 07 Query OK, 1 row affected (0.00 sec) 08 mysql> grant all on teste.* to guest identified by "guest"; 09 Query OK, 0 rows affected (0.06 sec) 10 mysql> flush privileges; 11 Query OK, 0rows affected (0.03 sec) 12 mysql> exit 13 Bye Agora vamos comentar isso. Na linha 01, você pede para logar com o usuário administrador do MySQL, que no caso é chamado root (--user=root), mas poderia ser outro. Fora isso, temos também que dizer que para esse usuário será preciso digitar uma senha (-p). Se você não sabe qual é esse usuário, me desculpe, mas consulte a pessoa que instalou o MySQL nasua máquina. Agora, na linha 06 pedimos para criarmos o banco de dados teste e na linha 08 dizemos que o usuário guest (to guest) com senha guest (identified by "guest") terá todos os direitos no banco de dados teste (grant all on teste.*). Na linha 10, fazemos valer o novo usuário. Assim, só depois desse comando o usuário vai funcionar e exit é para sair (linha 12). Agora você me pergunta: "E atabela?". Criaremos a tabela usando o usuário que possui direitos nela para irmos nos acostumando a isso! Vamos lá:

http://www.vivaolinux.com.br/artigos/impressora.php?codigo=316

17/3/2011

Usando MySQL na linguagem C [Artigo]

Page 2 of 9

$ mysql --user=guest -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 38 to server version:3.23.51-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> connect teste; Connection id: 39 Current database: teste mysql> create table aprendendo ( -> `ID` INT NOT NULL AUTO_INCREMENT, -> `nome` VARCHAR( 40 ) NOT NULL, -> `sexo` CHAR( 1 ) NOT NULL, -> unique ( `ID` ) -> ); Query OK, 0 rows affected (0.00 sec) mysql> exit Bye Isso faz com que você reconecte com o banco dedados teste (connect teste) e depois crie uma tabela chamada aprendendo (create table aprendendo), que possui três colunas: ID: que receberá um inteiro incrementado automaticamente; nome: que será do tipo VARCHAR que não poderá ser vazio; sexo: que será do tipo CHAR, também não podendo ser vazio. Por fim, definimos uma chave única para a tabela. Um pequeno comentário quanto aos tipos VARCHAR e CHAR.VARCHAR é usado quando queremos uma economia de espaço nas tabelas. Essa economia é gerada da seguinte forma: podemos inserir no máximo 40 caracteres, sendo que se inserirmos menos, vamos ter uma string da quantidade inserida, ao contrário do tipo CHAR, pois o tipo CHAR sempre vai ter o tipo definido. Isso dá um ganho de velocidade na hora da busca. Se definirmos um CHAR de no máximo 5 einserirmos 3 caracteres, ele ocupará espaço como se tivesse cinco caracteres.

Iniciando na programação Vamos começar pelo começo. Para isso precisamos ensinar como inicializar a variável de conexão e depois como conectar. No header mysql.h temos algumas funções interessantes: MYSQL * mysql_init(MYSQL *mysql); MYSQL * mysql_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd);...
tracking img