Когда я пытаюсь запустить ...
SELECT * FROM Users WHERE Username = 'ae'
, он возвращает совпадения с именем пользователя æ (символ ясеня).
Мне было интересно, есть ли способ поддержать такие символы, как символ ясеня, но получить точное соответствие тому, что я ищу.
Я бы хотел выполнить поиск для ae и получите только ae, а не ae и æ
Я использую SQL Server 2008 и SQL Server 2008 R2. цикл (Строка, Файл) -> цикл (Строка, Файл, 0). ...
Я разобрался с циклами в стиле Эрланга: хвостовая рекурсия с функциями, которые принимают все «переменные, которые не меняются»:
%% does something, 80 bytes at a time
loop(Line, File) -> loop(Line, File, 0).
loop(Line, File, Count) ->
do_something(Line, Count),
case file:read(File, 80) of
{ok, Line2} -> loop(Line2, File, Count + 1);
eof -> file:close(File);
{error, Reason} -> {error, Reason}
end.
Но, как лучше всего увеличить счетчик в Эрланг? В большинстве языков программирования подсчет производится путем увеличения переменной (например, count + = 1;
). Переменные Erlang не меняются, поэтому нужно проявлять творческий подход. К счастью, у нас есть варианты ...
Мы можем передавать переменную Counter с нашими функциями и увеличивать ее при каждом вызове функции. Мы можем использовать словарь процесса для хранения счетчика и get
и put
для его увеличения. Мы можем использовать ETS, локальное хранилище данных для процессов. Мы можем использовать встречный процесс (!!!):
loop(Count) ->
receive
{ incr } ->
loop(Count + 1);
{ report, To } ->
To ! { count, Count },
loop(Count)
end.
incr(Counter) ->
Counter ! { incr }.
get_count(Counter) ->
Counter ! { report, self() },
receive
{ count, Count } -> Count
end.
Я уверен, что есть и другие способы, в зависимости от объема. Что считается " Я искал пример, и я не нашел ни одного простого и четкого. Я нашел примеры того, как отправить электронное письмо, но не отправить электронное письмо с вложением.
Есть ли у кого-нибудь ссылка на пример, который они бы порекомендовали? Размещение примера здесь тоже подойдет!