Другие языки программирования и технологии

Помогите с алгоритмом.

В базе данных возникла следующая проблема: при написании процедуры входа в базу (авторизации) имеется таблица с логинами и соответствующими им паролями. Алгоритм реализации подобного входа в общем виде я написал так:если (login=user)&(pas=right_pas) то вход осуществляется.Проблема в том, что строка "user1" содержит в себе строку user и следовательно user1+right_pas приводит к входу в базу, хотя подобного быть не должно. В принципе можно к каждому user-у в базе логинов добавлять пробел, но тогда "user 1" будет аналогичным образом входить в базу.Вопрос: как этого избежать?
Возможно, надо использовать операцию "==" вместо "=".

На результат операции отношения влияет установка команды SET EXACT, например:
set exact off
? 'abcd' = 'ab'
&& напечатает .T. , т. к. при установке SET EXACT в OFF в сравнении участвуют только 2 символа (количество символов первого операнда) .

Если установить SET EXACT в ON, то VFP увеличит размер короткой строки, добавляя к ней хвостовые пробелы, и будет сравнивать все символы операндов, например:
set exact on
? 'abcd' = 'ab'
&& напечатает .F.

Исключение составляет операция "==", которая всегда работает как будто SET EXACT установлен в ON.

Взамен операции "==", можно употребить встроенную функцию LIKE()
? Like ('abcd', 'ab' )
&& напечатает .F.
? Like ('abcd', 'abcd' )
&& напечатает .T.

Однако возможности функции LIKE несколько шире, в ее аргументы можно вставлять символы "*" и "?", используемые в общепринятом порядке, например:
? Like ('ab*', 'abcd' )
&& напечатает .T.
АВ
Армен Вячкилев
416
Лучший ответ
Я ничё не понял что за строка user 1 а тем более сложение непонятно зачем строк.
НИКОГДА НЕ ЮЗАЙ СЛОЖЕНИЕ СТРОК!!! !
1)Пользователь вводит в поле логин (String), нажимает Enter.
2) Данный логин ищется в базе. База это простейшая хэш таблица ключ-значение. База в ответ даёт пароль. Или сигнал что такого логина нет. Или пока не даёт даёт только тогда когда введён пароль и нажат Enter.
3) Пользователь вводит пароль (String) проверяется совпадает ли он с тем что в базе. Если да то вход если нет то думай чё делается дальше. В принципе можно сделать даже две хэш таблицы
Логин -> хэш число и вторая Пароль-> хэш число (то же самое) тогда две базы выдадут тебе два числа (Longint ) например
и ты их сравшиваешь.
Паша Х
Паша Х
7 613
вот ужас то.. . этоже изврат какойто.. . то есть в фокспро нельзя тупо сравнить 2 строки?