Login/Senha no PostgreSQL + Date

Olá a todos.

Sou iniciante em BD e em Java, com isso peço ajuda de vocês para o seguinte…

Preciso criar uma aplicação em Java, que quando inicializada apareca uma tela de Login e Senha… a pessoa digita esse login e dae aparece a tela inicial do programa.
A sacada é que tenho 2 tipo de Logins(Usuario comum e um super usuario que tem acesso a todas as informações), ou seja… no usuario comum so tenho acesso a algumas pocas coisas no meu banco de dados, no super usuario tenho acesso a praticamente tudo… então como faria algo desse tipo utilizando PostgreSQL.

Outra coisa, é que no meu banco de dados precisaria ter em uma determinada tabela, uma coluna que armazenasse uma data e hora… algo do tpw: 01/05/2009 - 15:00, entende?como poderia fazer isso.

Agradeço a atenção de todos.

Abraço!!

No postgre você deve criar uma tabela Usuario, com um campo tipo_usuario para identificar qual o usuario que fez o login.

O tipo de dados que permite armazenar data e hora no postgre é o TIMESTAMP.

MKThEbEsT, acho q o mais simples e eficiente pra vc seria criar uma estrutura com menus e dar acesso ao menus de acordo com cada usuario

tipo:

“usuario tem varios menus”

assim vc resolveria a questão do que cada um pode acessar de forma bem simples, é claro q vc pode melhorar muito essa idéia criando perfis de acessos que podem ser compartilhados e tal, mas pra iniciar acho q isso ja te ajuda.

quanto a data e hora é só vc escolher qual tabela vc quer e cria nela um campo do tipo timestamp without time zone acho q é isso, q ao grava guardaria exatamente o q vc precisa!

Espero ter ajudado!

Abraço!

Obrigado a todos pelas dicas.

Quanto ao lance de criar uma tabela contendo usuario, como ficaria o lance de autenticação?
Na propria tabela colocaria a senha da pessoa cadastrada para verificar a autentiação?

abraço a todos.

[quote=MKThEbEsT]Obrigado a todos pelas dicas.

Quanto ao lance de criar uma tabela contendo usuario, como ficaria o lance de autenticação?
Na propria tabela colocaria a senha da pessoa cadastrada para verificar a autentiação?

abraço a todos.[/quote]

Isso. O cara digita usuario e senha, e vc executa a seguinte query no banco:

SELECT * FROM Usuario where nome_usu = “nome que o cara digitou” AND senha_usu = “senha que o cara digitou”

Se a query não obtiver resultados, quer dizer que o cara não está cadastrado. Ou você oferece a chance de cadastrar ou simplesmente dá uma mensagem de erro.

Se a query obtiver resultado, quer dizer que o cara está lá. Utilizando a classe ResultSet, vc pegaria o tipo de usuario assim: rs.getString (“tipo_usu”).

Aí vc padroniza: se o tipo_usu for um, ele é admin do sistema senão não.

Muito obrigado a todos.

Agora to quebrando a cabeça para fazer ler o Driver da JDBC no meu Eclipse/Netbeans, como disse sou iniciante… mas vo pegando aos poucos ;D.

Abraço!

Galera, fui testar um pequeno login e senha aqui utilizando o PostgreSQL, vejam o erro.

tae o codigo.

System.out.println("Login"); x = s.nextLine(); System.out.println("Senha"); y = s.nextLine(); ResultSet rs = stm.executeQuery("SELECT login,senha FROM Usuario where login = "+x+" AND senha = "+y+""); if(rs.next()){ System.out.println("Login valido"); }else{ System.out.println("Login INvalido"); } System.out.println(rs);

Erro:

Exception in thread "main" org.postgresql.util.PSQLException: ERROR: column "maria" does not exist
	at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1592)
	at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1327)
	at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:192)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:336)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:235)
	at Teste.main(Teste.java:26)

Só pra efeito:
No login eu digito: maria
Na senha: maria10

Que é o que coloquei como teste no meu BD na tabela Usuario.

Poxa!

Também estou com a mesma dúvida, se alguem puder ajudar ficaria muito grata.

[quote=MKThEbEsT]Galera, fui testar um pequeno login e senha aqui utilizando o PostgreSQL, vejam o erro.

tae o codigo.

System.out.println("Login"); x = s.nextLine(); System.out.println("Senha"); y = s.nextLine(); ResultSet rs = stm.executeQuery("SELECT login,senha FROM Usuario where login = "+x+" AND senha = "+y+""); if(rs.next()){ System.out.println("Login valido"); }else{ System.out.println("Login INvalido"); } System.out.println(rs);

Erro:

Exception in thread "main" org.postgresql.util.PSQLException: ERROR: column "maria" does not exist
	at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1592)
	at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1327)
	at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:192)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:336)
	at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:235)
	at Teste.main(Teste.java:26)

Só pra efeito:
No login eu digito: maria
Na senha: maria10

Que é o que coloquei como teste no meu BD na tabela Usuario.[/quote]

Faltou as aspas simples antes e depois do x e do y.

Assim funfa:

stm.executeQuery("SELECT login,senha FROM Usuario where login = '"+x+"' AND senha = '"+y+"'");

rod.attack,

Rpz tu acredita que eu tava vindo justamente para dizer que resolvi o problema, hehee… cabei bulindo e vi que era aspas simples.

Muito obrigado a todos.

Abraço!