Dúvida na SCJD

9 respostas
Fernando_Romulo_da_S

Galera estou com as seguintes duvidas…
Na especificação tenho o seguinte:
It must allow the user to search the data for all records, or for records where the name and/or location fields exactly match values specified by the user.
Pelo que entendi devo procurar os registro usando o campos name e location, mas a questão é, uso o operador “and” ou o “or” quando o usuário buscar registro com os dois campos?

9 Respostas

Alexandre_Saudate

Pela própria especificação da SCJD, se não me engano, o próprio usuário deve construir esse tipo de query.

E

and/or = e/ou

Ou seja:

  • o nome bate,
    ou
  • o endereço bate,
    ou
  • o nome bate, assim como o endereço.
Fernando_Romulo_da_S

Obrigado por Responder!!!
Então eu devo ter um comboBox para o usário selecionar se for “AND” ou “OR”…

Fernando_Romulo_da_S

entanglement:
and/or = e/ou

Ou seja:

  • o nome bate,
    ou
  • o endereço bate,
    ou
  • o nome bate, assim como o endereço.

Obrigado por responder, mas não entendi nada…

E

Ainda não entendeu? Ele está pedindo que você faça uma tela e possa buscar um registro segundo um dos três critérios:

a)  o nome precisa bater - o endereço não precisa bater;

b)  o endereço precisa bater - o nome não precisa bater;

c) O nome e o endereço têm de bater.

O operador, se é que você ainda não conseguiu ligar os pontos, pode ser AND ou OR. Depende da escolha que o usuário fizer.

Fernando_Romulo_da_S

entanglement:
Ainda não entendeu? Ele está pedindo que você faça uma tela e possa buscar um registro segundo um dos três critérios:

a)  o nome precisa bater - o endereço não precisa bater;

b)  o endereço precisa bater - o nome não precisa bater;

c) O nome e o endereço têm de bater.

O operador, se é que você ainda não conseguiu ligar os pontos, pode ser AND ou OR. Depende da escolha que o usuário fizer.

Toda vez que o usuário fornecer o nome e endereço na pesquisa, a pesquisa será sempre “AND”?

E

O que já vi em muitos sistemas é que, se você não preenche um determinado campo, ele não é considerado na busca, e se você preenche N campos, esses N campos são considerados na busca.

Você pode explicar na sua documentação que se você preencher o nome e o endereço, então você irá procurar usando AND.

Fernando_Generoso_da

entanglement:
Ainda não entendeu? Ele está pedindo que você faça uma tela e possa buscar um registro segundo um dos três critérios:

a)  o nome precisa bater - o endereço não precisa bater;

b)  o endereço precisa bater - o nome não precisa bater;

c) O nome e o endereço têm de bater.

O operador, se é que você ainda não conseguiu ligar os pontos, pode ser AND ou OR. Depende da escolha que o usuário fizer.

Então, utilize o or…

se um ou o outro bater…nesse caso, os registros que vierem com and tmb estarão válidos fazendo or…

Fernando_Romulo_da_S

entanglement:
O que já vi em muitos sistemas é que, se você não preenche um determinado campo, ele não é considerado na busca, e se você preenche N campos, esses N campos são considerados na busca.

Você pode explicar na sua documentação que se você preencher o nome e o endereço, então você irá procurar usando AND.

Mais uma dúvida, na especificação o comentário do metodo "find "da interface DB diz o seguinte…

/**
     * Returns an array of record numbers that match the specified criteria.
     * 
     * @param criteria
     *            a <code>String</code> array containing critiera
     *            corresponding to fields in the database. Field n in the
     *            database file is described by criteria[n]. A null value in
     *            criteria[n] matches any field value. A non-null value in
     *            criteria[n] matches any field value that begins with
     *            criteria[n]. (For example, "Fred" matches "Fred" or "Freddy".)
     * @return an <code>int</code> array of record numbers matching the
     *         specified criteria.
     * 
     */
    public int[] find(String[] criteria);

É para buscar nomes que começam com o fornecido… e no documento HTML da especificação vejo a seguinte :
"It must allow the user to search the data for all records, or for records where the name and/or location fields exactly match values specified by the user ". Me parece para buscar os nome / endereço que são exatamente iguais ao fornecido pelo usuário. Devo pesquisar por “começar pelo valor fornecido” ou “exatamente igual ao campo fornecido”?

Criado 13 de janeiro de 2010
Ultima resposta 13 de jan. de 2010
Respostas 9
Participantes 4