• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

x_soldier

Questão de Exame

15 mensagens neste tópico

Boas Pessoal!

Estou a tentar fazer umas correcções de exames de Base de Dados.

Alguém me consegue ajudar com esta?

"Como Administrador da base de dados aconselharia que se fizesse uma alteração à estrutura da base de dados utilizando um programa em PHP? Justifique e apresente outra alternativa.

Desde já Obrigado  ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

"Como Administrador da base de dados aconselharia que se fizesse uma alteração à estrutura da base de dados utilizando um programa em PHP? Justifique e apresente outra alternativa.

Não vejo porque não... Usando uma aplicação madura e bem desenvolvida como por exemplo o phpMyAdmin, temos acesso a grande parte (se não mesmo a todas) das funcionalidades necessárias para gerir uma base de dados. Sendo uma aplicação muito conceituada e usada pela grande maioria dos webhosts, não vejo qualquer problema em usar esta aplicação PHP para gerir a base de dados. No caso de uma aplicação caseira ou desenvolvida com o propósito de gerir uma base de dados especifica, talvez não o recomendaria, com a excepção de que se a pessoa ou equipa por detrás de tal aplicação fosse bastante experiente e com vastos conhecimentos no que toca a PHP e ao respectivo motor da base de dados.

Uma alternativa, possivelmente mais robusta e com menos probabilidades de falhar, será talvez, as próprias aplicações, por norma em linha de comandos, desenvolvidas por quem desenvolveu a respectiva base de dados. Para um administrador experiente em bases de dados, esta opção talvez seja a mais ideal.

Não sou experiente e pouco percebo de bases de dados... Não sei se está certo ou errado, mas era algo dentro destes moldes que eu responderia.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não vejo porque não... Usando uma aplicação madura e bem desenvolvida como por exemplo o phpMyAdmin, temos acesso a grande parte (se não mesmo a todas) das funcionalidades necessárias para gerir uma base de dados. Sendo uma aplicação muito conceituada e usada pela grande maioria dos webhosts, não vejo qualquer problema em usar esta aplicação PHP para gerir a base de dados. No caso de uma aplicação caseira ou desenvolvida com o propósito de gerir uma base de dados especifica, talvez não o recomendaria, com a excepção de que se a pessoa ou equipa por detrás de tal aplicação fosse bastante experiente e com vastos conhecimentos no que toca a PHP e ao respectivo motor da base de dados.

Uma alternativa, possivelmente mais robusta e com menos probabilidades de falhar, será talvez, as próprias aplicações, por norma em linha de comandos, desenvolvidas por quem desenvolveu a respectiva base de dados. Para um administrador experiente em bases de dados, esta opção talvez seja a mais ideal.

Não sou experiente e pouco percebo de bases de dados... Não sei se está certo ou errado, mas era algo dentro destes moldes que eu responderia.

-asse

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Essa pergunta é manhosa... a minha resposta seria:

Apenas aconselharia a utilização de PHP para a manutenção/alteração de uma estrutura de uma base de dados se outras alternativas locais não estivessem disponíveis, como por exemplo: Navicat, MS SQL SERVER Console Management, etc... :confused:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Com uma resposta dessas terias 0...

Isto é uma pergunta onde a resposta necessita de uma justificação, não é uma sondagem.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eh lah Naz... tás um professor e pêras... muito exigente.

Mas pronto eis a minha justificação:

Com os programas supracitados, a trabalhar LOCALMENTE, garanto que não tenho falha de ligação ou, pelo menos, minimizo as variáveis que se interpõem entre mim e o servidor de base de dados.

Além disso, apesar do PHP ser uma excelente linguagem (com a qual eu trabalho diariamente), as aplicações - por muito AJAX que tenham - nunca serão instantâneas como as aplicações acima definidas.

Por muito que queiram, uma página baseia-se num browser...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito exigente? A pergunta diz explicitamente para justificar e apresentar outra alternativa... Onde está a tua justificação? A tua resposta não justifica nada, é somente uma escolha "porque sim". Achas isso uma resposta digna de uma pergunta de exame?

Não sei onde estudas ou onde estudaste (se for esse o caso) mas onde eu ando e onde muita gente anda, bem que tinhas um corte bem grande a toda a resposta...

Quanto a tua nova resposta... Não percebo em quê que esses programas são melhores que uma ferramenta web. Porquê que havia de ter falhas na ligação se estou a trabalhar localmente? E minimizar as variáveis? Acho que vai dar ao mesmo... Tu dizes que "uma página baseia-se num browser", eu digo que ambos se baseiam em código apenas em linguagens diferentes. Acho que as variáveis que estão entre ti e o servidor, vai depender de qual esta melhor programado, independentemente se web based ou não. Já no segundo paragrafo, concordo plenamente contigo.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu concordo com o Nazgulled e com os demais que acham que é perfeitamente possível administrar sem problemas uma base de dados com um programa feito em PHP. Mas a pergunta parece estar inclinada para o não, ali a julgar pelo "apresente outra alternativa", sinceramente acho muito estranho...

Porque no fundo o que o PHP vai usar são ferramentas que, segundo a minha ideia, interagem directamente com o SGBD, logo será praticamente o mesmo que estar na consola do MySQL, por exemplo, mas com um conjunto de funcionalidades "mais restricto" (isto é, "limitado" pelas funções que o PHP oferece). Corrijam-me se estiver errado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito exigente? A pergunta diz explicitamente para justificar e apresentar outra alternativa... Onde está a tua justificação? A tua resposta não justifica nada, é somente uma escolha "porque sim". Achas isso uma resposta digna de uma pergunta de exame?

Certo, tens toda a razão, faltava a justificação. :)

Não sei onde estudas ou onde estudaste (se for esse o caso) mas onde eu ando e onde muita gente anda, bem que tinhas um corte bem grande a toda a resposta...

:) Ainda bem que eu já não estudo. Não sou licenciado, pelo que acho muito bem que vocês mostrem os vossos conhecimentos. Tenho pouca experiência e falo apenas para aprender e trocar opiniões. Afinal de contas a razão para se comunicar numa comunidade é a troca de informação. (Não só mas também :) )

Quanto a tua nova resposta... Não percebo em quê que esses programas são melhores que uma ferramenta web. Porquê que havia de ter falhas na ligação se estou a trabalhar localmente? E minimizar as variáveis? Acho que vai dar ao mesmo... Tu dizes que "uma página baseia-se num browser", eu digo que ambos se baseiam em código apenas em linguagens diferentes. Acho que as variáveis que estão entre ti e o servidor, vai depender de qual esta melhor programado, independentemente se web based ou não. Já no segundo paragrafo, concordo plenamente contigo.

Desculpa-me discordar. Deixa-me fundamentar um pouco a minha resposta, desde já dizendo que é uma opinião pessoal.

Quanto ao PHP:

1 - Depreende-se que o PHP necessite de pelo menos 2 ou 3 coisas para interagir com a base de dados:

  1-1 - Um servidor Web;

  1-2 - A linguagem PHP;

  1-3 - O driver-conector à base de dados (ex: MySQL Driver.... No PHP é nativo, mas é um driver na mesma).

(Aqui não incluo o SGBD, que penso ser de carácter obrigatório para os dois :))

2 - Como já disse, o PHP gera (ou não) páginas-web que são, normalmente, visualizadas num browser. Podemos chegar ao extremo de usar um browser text-mode, mas é praticamente o mesmo... Uma aplicação alheia à aplicação-web.

3 - O facto de ser local, melhora muita coisa. A velocidade de resposta do servidor é maior.

4 - No entanto, o ponto que mais distingue uma aplicação web de uma aplicação desktop é o multi-tasking. Concordo que o AJAX veio facilitar/simular a ideia de multitasking, ao ponto de podermos dizer que a página faz várias tarefas ao mesmo tempo (que FAZ!) mas depende de um objecto do browser que para mais de 3 tarefas ao mesmo tempo já começa a ser pouco assíncrono.

5 - IMHO, acho que o PHP é óptimo para aplicações-web :D no entanto eu gostava de saber o porquê de se preferir uma aplicação-web a uma aplicação desktop. É contra-natura não? O propósito de um servidor-web é disponibilizar conteúdo (Web) para a Internet ou uma rede interna (Intranet ou internet), digo eu.

Quanto a aplicações desktop:

1 - A aplicação apenas necessita do driver-conector à base de dados.

2 - Usa-se a si mesma, disponibilizando um ambiente gráfico ou de linha de comandos, dependendo da aplicação gerada. Não depende de terceiros.

3 - Se ambas as aplicações estiverem em modo local, poucas diferenças tem a nível de conexão e ou velocidade. No entanto se forem utilizados acessos remotos, a aplicação Web retorna (normalmente) HTML para permitir um interface gráfico (ex: phpmyadmin) já a aplicação apenas retorna os dados necessários através de sockets.

4 - Como disse o multitasking é um ponto forte. É possível fazer várias tarefas ao mesmo tempo (se a aplicação estiver correctamente desenvolvida). Numa base de dados pequena, é claro que isso não se nota, mas backups, migração de registos e/ou estruturas de bases de dados, ou mesmo replications, em grandes tabelas são demoradas.

5 - Por fim, penso que para uso local, e porque um servidor de base de dados pode servir para mais do que servir bases de dados a nível local (desenvolvimento local), penso que quanto menos recursos consumir ao servidor para o administrar, melhor.

Esta é a minha opinião. Desculpem o post longo.

Abraço e desde já obrigado pela vossa opinião

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa lá mas tu não discordaste de nada... Disseste exactamente o mesmo que disseste acima mas divagando mais e como tal a minha resposta mantém. Concordo contigo num dos pontos, mas no resto não; ou seja, quando se trata de um acesso local, vai quase tudo dar ao mesmo, seja web ou desktop. É que tu na tua primeira resposta frisaste bem o "localmente" e localmente, para mim, vai ser praticamente igual.

Se queres discutir remotamente, estás à vontade, mas eu isso nem se quer comentei, até porque tu nem se quer estavas a mencionar isso inicialmente.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

A minha 1ª resposta:

Essa pergunta é manhosa... a minha resposta seria:

Apenas aconselharia a utilização de PHP para a manutenção/alteração de uma estrutura de uma base de dados se outras alternativas locais não estivessem disponíveis, como por exemplo: Navicat, MS SQL SERVER Console Management, etc... :)

Aqui eu digo "Se outras alternativas locais não estivessem disponíveis" .... Não estou a ver o 'localmente' nem o referir que o PHP é local. Por fim, eh pah aprende a ler... Se lês em diagonal é contigo ... Eu aqui dei-te uma explicação mais lógica do porquê de escolher uma aplicação desktop a uma aplicação PHP, mesmo que LOCALMENTE... Se queres bater na mesma tecla, fixe para ti.

A pergunta do exame questiona se tu aconselharias o uso de um programa em PHP para administrar a base de dados. Não diz "Desaconselharia o uso de PHP para administrar uma base de dados?"... Só tens que fundamentar se aconselhavas ou não e porquê.... Ora se existem alternativas que não necessitam de instalar servidores web, para que raio vou usar o PHP ?

Bah.. e tenho dito

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Meus caros,

Aqui o bárbaro acha esta questão muito parecida com a discussão causada pelo facto de os anjos serem meninos ou meninas.

- Não é especificada a base de dados em causa. Para algumas bases de dados, um interface em PHP pode não ser uma solução razoável. Por exemplo, o phpMyAdmin funciona em condições (ou de todo ...? ) com o Postgre ? Existe algum interface já construido em PHP para intervir na estrutura do MsSQL  com algum nivel de adequação ? Não sei, digam-me voces.

- Eu pessoalmente detesto a linha de comandos. Se soubesse que existia um interface PHP em condições para alterar a estrutura de uma BD, nem pestanejava. Era mesmo isso que fazia, e recomendava-o também. Acho que continua a ser necessário saber utilizar as linhas de comando, mas se inventaram máquinas de cálcular foi para evitar que andassemos a perder tempo a fazer cálculos à unha. Já vi muito génio carregado de blah blah blah e cheio de conhecimento até ao tecto que depois na verdade não é capaz de transformar esse conhecimento todo seja no que for de útil (professores de faculdade inclusive).

Em resumo:

Recomendaria o uso da linha de comando a alguém que estivesse a aprender, devendo isto ser considerado como a alternativa pretendida na resposta. O uso da linha de comando obriga à pesquisa, que nos traz o conhecimento génerico que precisamos para evoluir.

Recomendaria o uso de um interface a alguém que já soubesse o que está a fazer, e que como tal já chegou ao ponto que tem é que apresentar produtividade, que é o que precisa para justificar o que come.

E na minha idade, se o professor discordasse ... temos pena. Que pusesse lá o tracinho.

iNfEcTiOn, my main man ...

é sempre um prazer rever o meu amigo no seu melhor  :biggrin:

Saudações Informáticas!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Aqui o bárbaro

Discordo xD eheheheh... A não ser que a vida seja uma 'selva' mas acho que já existe um tópico a falar disso :P

- Não é especificada a base de dados em causa. Para algumas bases de dados, um interface em PHP pode não ser uma solução razoável. Por exemplo, o phpMyAdmin funciona em condições (ou de todo ...? ) com o Postgre ? Existe algum interface já construido em PHP para intervir na estrutura do MsSQL  com algum nivel de adequação ? Não sei, digam-me voces.

Excelente ponto. Aliás, poderia dizer-se "Ah é possível desenvolver uma aplicação em PHP para qualquer base de dados". O que acredito perfeitamente e nem sei se o phpmyadmin suporta outros SGBDs que não o MySQL. Mas isso também não importa, o que importa é que nem todas são suportadas logo corro o risco de o prof. perguntar "Ah e se for o X SGBD?" (e calhar o X de ser uma das poucas não suportadas -_-').

Além disso, no caso de não existir aplicação PHP desenvolvida para o SGBD em questão, imaginemos então que até se dava a resposta "Ah é possível desenvolver uma aplicação em PHP para qualquer base de dados", acrescentando "Se não existir, faz-se!".

Mas um administrador de base de dados TEM que saber programar em PHP ? Not really.

Gostei deste ponto.

- Eu pessoalmente detesto a linha de comandos. Se soubesse que existia um interface PHP em condições para alterar a estrutura de uma BD, nem pestanejava. Era mesmo isso que fazia, e recomendava-o também. Acho que continua a ser necessário saber utilizar as linhas de comando, mas se inventaram máquinas de cálcular foi para evitar que andassemos a perder tempo a fazer cálculos à unha. Já vi muito génio carregado de blah blah blah e cheio de conhecimento até ao tecto que depois na verdade não é capaz de transformar esse conhecimento todo seja no que for de útil (professores de faculdade inclusive).

Eu junto-me ao grupo dos 'detesto linha de comandos'. É para isso que se desenvolve aplicações gráficas/com interface gráfico (GUI) porque senão obrigávamos toda a gente a saber trabalhar com comandos e 70% do mercado informático que é doméstico não existiria.

"Ah para instalares o FIFA tens que fazer o comando "setup.exe -parametro1 valorParametro1 -parametro2 valorParametro2"

Não me parece bem.

No entanto, o plano de contingência passa por saber usar a linha de comandos. Aliás, se um administrador de base de dados (de profissão) não o souber.... É complicado :S Infelizmente há coisas (pouquinhas) que nem as aplicações desktop permitem fazer. É um plano de contingência vá

Em resumo:

Recomendaria o uso da linha de comando a alguém que estivesse a aprender, devendo isto ser considerado como a alternativa pretendida na resposta. O uso da linha de comando obriga à pesquisa, que nos traz o conhecimento génerico que precisamos para evoluir.

Recomendaria o uso de um interface a alguém que já soubesse o que está a fazer, e que como tal já chegou ao ponto que tem é que apresentar produtividade, que é o que precisa para justificar o que come.

E na minha idade, se o professor discordasse ... temos pena. Que pusesse lá o tracinho.

Aí está!!!! Para quem está a aprender, deve perceber da linha de comandos. Não é obrigatório que a use, mas lá está, se não a souber usar corre o risco de não ter aplicação nenhuma instalado no PC, NÃO A PODER INSTALAR (um administrador de bd não é necessariamente o root de um computador) e não ter outra solução senão usar a linha de comandos do SGBD.

Concordo plenamente com a recomendação. :P Mas isto sou eu claro, que não sou o professor.

iNfEcTiOn, my main man ...

é sempre um prazer rever o meu amigo no seu melhor  :biggrin:

Saudações Informáticas!

:D Igualmente IcePick... Rico trocadilho com o nick!!!

Abraço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora