You are on page 1of 11

1

1. Introdução
O presente trabalho, cujo tema é Desenvolver um sistema de cadastro de estudantes no
Aplication Froms surge no âmbito do Módulo Programação C#, proposto pelo docente
durante as aulas e tem como finalidade de desenvolver um sistema de cadastro de
estudantes no Aplication Froms e uma base de dados MySql.
Este trabalho tem como importância académica, possibilidade de ajudar o aluno a abter
conhecimentos práticos sobre o desenvolvimento de aplicações e desenvolvimento de
base de dados.

1.1 Objectos geral


 Desenvolver um sistema de cadastro de estudantes no Aplication Froms que
armazene na base de dados.

1.2 Objectivos específicos


 Construir uma tabela de login na base de dados;
 Criar tabela de login Windows application froms;
 Criar uma tabela registo de estudantes Windows application froms;
 Construir tabela de registo na base de dados;
 Criar código de conexão da base de dados e Windows application froms;

2
2. Desenvolver um sistema de cadastro de estudantes no Aplication Froms

Para a elaboração do projecto cujo, o objectivo é fazer um sistema que permita fazer
login e depois devera permitir acessar a janela de cadastro de estudante que permite
fazer o CRUD, isto é, Cadastrar,ler, Actualizar, Apagar e visualizar os dados
Armazenados na Base de Dados.
Para a execução do projecto usou-se:
 O Visual Studio foi desenvolvida em 1997, havia duas edições deste produto
edição profissional e enterprise (empresarial).
O Visual Studio que é um ambiente de desenvolvimento integrado (IDE) da Microsoft
desenvolvimento de software especialmente dedicado ao NET Framework e as
linguagens visual basic C,C++,C#. e outras.
 Xampp é um pacote com os principais servidores de código aberto do mercado,
incluindo FTP, banco de dados MySQL e Apache com suporte as linguagens PHP e
Perl. De plataforma, software livre, que consiste principalmente na base de dados
MySQL.

As credencias a serem inseridas na janela de login, são previamente definidas na tabela


de base de dados no nosso phpMyAdmin. Em que temos o nosso ID/usuário que é a
chave primaria e depois o nome que equivale ao Usuario e a senha que equivale a Senha
da janela de login com as devidas credencias que deve ser inseridas no processo de
Login.

1.Tabela usuários no phpMyadmin

O login permite ao usuário aceder ao sistema através dos campos Usuário em que ira
introduzir o user e a Senha que é o pin do usuário e também um botão que permite fazer
o login ou seja entrar no sistema. No caso de Usuário falhar código de usuário ou a
Senha, o sistema ira imitir uma mensagem informando “dados inválidos ”.

3
No caso dos dados forem validos ira abrir uma nova janela para cadastro de estudantes.

2. Janela de Login Aplication Froms do Visual Studio

O sistema de cadastro de estudantes que procede ao de login. O sistema cadastro de


estudante é composto por nome, sobrenome, número de processo, curso, contacto,
endereço e mensalidade que são os itens ou requisitos para o cadastro dos estudantes.
O sistema tem quatro funcionalidades que são Registar que permite adicionar estudantes
na nossa base de dados, Actualizar que permite alterar informações sobre um
determinado estudante, Apagar que permite eliminar um registo da nossa base de dados
e Limpar campos que permite excluir os campos. O sistema ainda nos apresenta a hora,
data e tabela de base dados com as informações dos estudantes cadastrados.

4
3. Janela de cadastro de estudantes Aplication Froms do Visual Studio

Apos registar, Actualizar, Apagar ou mesmo limpar campos todas estas ações dos
nossos botões, as informações destas ações serão armazenadas na tabela de base de
dados do phpMyAdmin.

4.Tabela estudantes no phpMyadmin.

5
3. Conclusão

Com este projecto podemos concluir que aplicativo CRUD pode nos facilitar bastante
em sistemas de registo seja académicos, comerciais ou empresarias porque nos
possibilita registar, ler, actualizar, apagar e visualizar os dados na base de dados. O uso
de uma base de dados tem grandes vantagens como independência dos dados, acesso
eficiente aos dados, administração facilitada e outos.

Com o projecto pode aprender mais acerca das plataformas de desenvolvimento e


também aprofundar conhecimentos para a elaboração do projecto.

6
4. Referencias Bibliográficas
https://pt.m.wikipedia.org/wiki/Microsoft_Visual_Studio
https://pt.m.wikipedia.org/wiki/XAMPP

7
5. Anexo
No código desenvolveu-se instruções que possibilitarão a conexão da base de dados a
nossa aplicação.
Login.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace Estudante
{
public partial class Login : Form
{
Thread novo;

public Login()
{
InitializeComponent();
}

private void btentrar_Click(object sender, EventArgs e)


{
string caminho = "datasource=127.0.0.1;username=root;password=;
database=cadastro";

MySqlConnection ligacao = new MySqlConnection(caminho);


DataTable dados = new DataTable();
MySqlDataAdapter cmd = new MySqlDataAdapter("SELECT * FROM usuarios
WHERE nome='"+txusuario.Text+"' AND senha='"+txsenha.Text+"'",ligacao);
cmd.Fill(dados);
if (dados.Rows.Count == 1)
{
this.Close();
novo = new Thread(TelaCadastro);
novo.SetApartmentState(ApartmentState.STA);
novo.Start();

}
else {
MessageBox.Show("Dados inválido");
}

public void TelaCadastro()


{
Application.Run(new Cadastro());
}

}
}

8
No código desenvolveu-se as instruções que irão dar ação as funções dos botões e
também as instruções para conectar a nossa base de dados a nossa aplication froms no
Visual Studio.
Cadastrar.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace Estudante
{
public partial class Cadastro : Form
{
public Cadastro()
{
InitializeComponent();
}

private void timer1_Tick(object sender, EventArgs e)


{
labRel.Text =
Convert.ToString(DateTime.Now.ToLocalTime().ToString("hh:mm:ss"));
labRel.ForeColor = Color.Cyan;
}

private void btlimpar_Click(object sender, EventArgs e)


{
txcontacto.Clear();
txcurso.Clear();
txendereco.Clear();
txmensalidade.Clear();
txnome.Clear();
txprocesso.Clear();
txsobrenome.Clear();
txnome.Focus();
}
public void Resultados()
{
MySqlConnection ligacao = new
MySqlConnection("datasource=127.0.0.1;username=root;password=;
database=cadastro");
DataTable dados = new DataTable();
MySqlDataAdapter cmd = new MySqlDataAdapter("SELECT * FROM
estudantes", ligacao);
cmd.Fill(dados);
tabelaResultados.DataSource = dados;
}

private void btn_registar_Click(object sender, EventArgs e)


{

9
try
{
MySqlConnection ligacao = new
MySqlConnection("datasource=127.0.0.1;username=root;password=;
database=cadastro");
ligacao.Open();
var query = "INSERT INTO estudantes
(processo,nome,sobrenome,contacto,endereco,curso,mensalidade) VALUES('" +
txprocesso.Text + "','" + txnome.Text + "','" + txsobrenome.Text + "','" +
txcontacto.Text + "','" + txendereco.Text + "','" + txcurso.Text + "'," +
txmensalidade.Text + ")";
MySqlCommand cmd = new MySqlCommand(query, ligacao); ;
cmd.ExecuteNonQuery();
ligacao.Close();
cmd.Dispose();
Resultados();

}
catch (Exception ex)
{
MessageBox.Show("Erro ao conectar com o banco de dados " +
ex.Message);
}
}

private void Cadastro_Load(object sender, EventArgs e)


{
Resultados();
}

int id_estudantes;
private void tabelaResultados_CellDoubleClick(object sender,
DataGridViewCellEventArgs e)
{
id_estudantes =
Convert.ToInt16(tabelaResultados.Rows[e.RowIndex].Cells["processo"].Value);

private void btapagar_Click(object sender, EventArgs e)


{
MySqlConnection ligacao = new
MySqlConnection("datasource=127.0.0.1;username=root;password=;
database=cadastro");
ligacao.Open();
MySqlCommand cmd = new MySqlCommand("DELETE FROM estudantes WHERE
processo=" + id_estudantes, ligacao); ;
cmd.ExecuteNonQuery();

cmd.Dispose();
cmd.Dispose();
btlimpar_Click(this,EventArgs.Empty);
Resultados();
}

private void btactualizar_Click(object sender, EventArgs e)


{
MySqlConnection ligacao = new
MySqlConnection("datasource=127.0.0.1;username=root;password=;
database=cadastro");

10
MySqlDataAdapter operario = new MySqlDataAdapter("(SELECT 1 FROM
estudantes WHERE processo='" + txprocesso.Text + "')", ligacao);

DataTable tabela = new DataTable();


operario.Fill(tabela);
if (tabela.Rows.Count > 0)
{
var query = "UPDATE estudantes SET nome='" + txnome.Text +
"',sobrenome='" + txsobrenome.Text + "',contacto='" + txcontacto.Text + "',
endereco='" + txendereco.Text + "',curso='" + txcurso.Text + "',mensalidade=" +
txmensalidade.Text + " WHERE processo='" + txprocesso.Text+"'";
ligacao.Open();
MySqlCommand cmd = new MySqlCommand(query, ligacao);
cmd.ExecuteNonQuery();

cmd.Dispose();
ligacao.Dispose();
Resultados();
}
}

private void tabelaResultados_MouseClick(object sender, MouseEventArgs e)


{
txprocesso.Text =
tabelaResultados.SelectedRows[0].Cells[0].Value.ToString();
txnome.Text =
tabelaResultados.SelectedRows[0].Cells[1].Value.ToString();
txsobrenome.Text =
tabelaResultados.SelectedRows[0].Cells[2].Value.ToString();
txcontacto.Text =
tabelaResultados.SelectedRows[0].Cells[3].Value.ToString();
txendereco.Text =
tabelaResultados.SelectedRows[0].Cells[4].Value.ToString();
txcurso.Text =
tabelaResultados.SelectedRows[0].Cells[5].Value.ToString();
txmensalidade.Text =
tabelaResultados.SelectedRows[0].Cells[6].Value.ToString();
}

}
}

11

You might also like