PROVA • Desenvolver um sistema simples de cadastro de contatos e seus telefones (agenda)

PROVA
• Desenvolver um sistema simples de cadastro de contatos e seus telefones (agenda).
ENTIDADES
• Contato (ID e Nome);
• Telefone (ID e Número).
FUNCIONALIDADES
• Buscar um contato pelo seu nome;
o Não precisa digitar o nome inteiro, apenas parte dele;
o Se não digitar nada, listar todos os contatos;
• Cadastrar um contato;
o Só precisa preencher o nome do contato, que deverá ser obrigatório;
• Exibir os dados de um contato;
o Exibir o ID e o nome do contato;
• Alterar os dados de um contato;
o Permitir a alteração apenas do nome, que é obrigatório;
• Cadastrar telefones para um contato;
o Cada contato poderá ter um ou mais telefones;
o O cadastro de telefones não precisa, necessariamente, estar junto com o cadastro do contato. Ele
pode ser feito após o cadastro do contato;
• Listar os telefones de um contato;
o Na tela de exibição dos dados do contato, listar os telefones daquele contato;
• Excluir um telefone;
• Excluir um contato;
o Não permitir a exclusão se o contato possuir algum telefone.
O QUE SERÁ AVALIADO
• Funcionamento do código;
o O que estiver implementado, tem que estar funcionando;
• Organização do código;
o Não precisa seguir nenhum padrão conhecido. Precisa apenas estar organizado e legível, de modo
que outros possam ler, entender e dar manutenção;
• Estruturação do código;
o Mesma coisa que o item acima;
• Boas práticas de programação;
o Implementação de algumas práticas de programação consideradas importantes: tratamentos de
erros, dispose de conexões com o banco, etc.
O QUE NÃO SERÁ AVALIADO
• Design e Layout;
IMPORTANTE
• Não é necessário desenvolver todas as funcionalidades do sistema. O mais importante é que, as que
estiverem prontas, estejam funcionando e bem implementadas;
• Todos os comandos de banco de dados executadas pelo código deverão ser feitos através de Stored
Procedures e nunca com o comando SQL direto no código;

– fiquei travado nessa parte Stored Procedures.
Se alguém puder me ajuda?

Stored Procedure é um procedimento (seja uma consulta ou execução) que fica armazenado para ser executado, precisando apenas do seu nome salvo, e parâmetros, opcionalmente.

Exemplo simples:

Quero, ao invés de usar o select normal, criar uma proc para retornar todos os meus clientes.
A query normal seria:

SELECT * FROM clientes

Criando uma procedure, posso fazer assim:

CREATE PROCEDURE  busca_clientes
AS
SELECT * FROM clientes

Para executar depois, basta eu usar o comando:

EXEC busca_clientes

Você pode ver isso funcionando AQUI