Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сортировка по IP адресу / 22 сообщений из 22, страница 1 из 1
24.12.2004, 11:54:17
    #32843445
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Собственно, сабж.

В таблице лежат IP адреса.
Как заставить Access'ку правильно сортировать их в ленточной форме?
Есть ли, вообще, маска для ввода IP адресов, как в настройках сети в системе?

Сейчас192.168.0.1192.168.0.11192.168.0.2

а хотелось бы

Хотелось бы192.168.0.1192.168.0.2192.168.0.11

а то у меня несколько сетей с сотнями адресов и такая фигня получается, что ни найти нужный, ни найти не занятый.
Жаль, что нет функций в Jet SQL как в T-SQL - тогда вопрос бы решился.
...
Рейтинг: 0 / 0
24.12.2004, 11:58:49
    #32843463
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Talen
Жаль, что нет функций в Jet SQL как в T-SQL - тогда вопрос бы решился.
1 не очень понятно - функции в Access есть и вызывать их можно из запроса
2 у тебя сейчас сортируется ка текст , хочешь по другому - умножь каждую тетраду на соответствующую степень 16 ,сложи - сортируй по полученному числу
3 маску можно писать самому
...
Рейтинг: 0 / 0
24.12.2004, 11:59:19
    #32843465
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Напиши функцию, которая из адреса посчитает число и по нему отсортируй
что-то типа
Dim a
a=split(x,".")
Fn1=cInt(a(0))*..*cInt(a(3))
...
Рейтинг: 0 / 0
24.12.2004, 12:01:40
    #32843475
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Чуш какую написал:^)
Вместо
Fn1=cInt(a(0))*..*cInt(a(3))
Fn1=cInt(a(0))*256*256*256+..+cInt(a(3))
...
Рейтинг: 0 / 0
24.12.2004, 12:08:54
    #32843502
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
SharkFn1=cInt(a(0))*..*cInt(a(3))
Fn1=cInt(a(0))*256*256*256+..+cInt(a(3))

Это все понятно. Я имел ввиду сохраненные на серваке функции.
Все усложняется тем, что у меня клиент не совсем на Access'ке, а серверная часть на Access'ке.

А как самому написать маску, чтобы между тетрадами можно было пробелом переходить и чтобы не заставляла вводить полные тетрады, т.е. не 192.168.000.001, а 192.168.0.1
...
Рейтинг: 0 / 0
24.12.2004, 12:10:53
    #32843511
Bagin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Talenа то у меня несколько сетей с сотнями адресов и такая фигня получается, что ни найти нужный, ни найти не занятый. Может лучше использовать DHCP?
...
Рейтинг: 0 / 0
24.12.2004, 12:11:45
    #32843515
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Я так понимаю, что эти маски одинаковы для всех языков, баз, ...
...
Рейтинг: 0 / 0
24.12.2004, 12:12:43
    #32843518
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
для маски я бы использовал 4 отдельных поля,по нажатию пробела прыгал в следующее + убирал бланкированные нули,например Format - ом
...
Рейтинг: 0 / 0
24.12.2004, 12:13:55
    #32843521
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
BaginМожет лучше использовать DHCP?

Сети не мои. Я всего лишь программку админам ваяю.
А насчет DHCP - спасибо!
...
Рейтинг: 0 / 0
24.12.2004, 12:16:49
    #32843529
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Shuhardдля маски я бы использовал 4 отдельных поля,по нажатию пробела прыгал в следующее + убирал бланкированные нули,например Format - ом

В принципе, можно. А потом в таблице собирать их запросом. А тоже думал над этим, но все-таки сортировка...
...
Рейтинг: 0 / 0
24.12.2004, 12:20:27
    #32843539
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
TalenЯ так понимаю, что эти маски одинаковы для всех языков, баз, ...
1 не могу согласиться - маска IP для СУБД ,мягко говоря крайне специфична
2 существует целый слой утилит для хранения IP , в том числе бесплатные - знают-ли об этом админы-заказчики ?
...
Рейтинг: 0 / 0
24.12.2004, 12:25:42
    #32843555
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Talen Shuhardдля маски я бы использовал 4 отдельных поля,по нажатию пробела прыгал в следующее + убирал бланкированные нули,например Format - ом

В принципе, можно. А потом в таблице собирать их запросом. А тоже думал над этим, но все-таки сортировка...
хранить нужна в 2-х видах как строку - для вывода и как денежный для сортировки
...
Рейтинг: 0 / 0
24.12.2004, 12:32:21
    #32843572
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
1. Админы-заказчики мне бабки платят и незачем им ничего знать + проект довольно специфичный - "ЧИСТА ДЛЯ НАС".

2. хранить нужна в 2-х видах как строку - для вывода и как денежный для сортировки.

Можно по-подробней. Причем тут деньги?
...
Рейтинг: 0 / 0
24.12.2004, 12:34:50
    #32843576
Alexey Sh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Деннежный тип хорош тем, что он с фиксированной точкой, хорощо подходит для данной задачи. Long - плох тем, что он знаковый
...
Рейтинг: 0 / 0
24.12.2004, 12:37:30
    #32843585
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Alexey ShДеннежный тип хорош тем, что он с фиксированной точкой, хорощо подходит для данной задачи. Long - плох тем, что он знаковый
А можно binary использовать. А как Access'ке указать, что тут поле такое-то, а показывать надо другое? И как это редактировать?
...
Рейтинг: 0 / 0
24.12.2004, 13:16:47
    #32843703
Shuhard
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
автор
А как Access'ке указать, что тут поле такое-то, а показывать надо другое? И как это редактировать?

не надо усложнять - сделай 2 поля, данные обновляй одновременно - денежное используй только для сортировки и видеть его пользователю не надо
P.S. Long согласен не удобен знаком,адреса выше 127.255.255.255 придется делать отрицательными и для сортировки извращаться.
...
Рейтинг: 0 / 0
24.12.2004, 13:42:23
    #32843775
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
именно приведенные для примера сортировать можно так
SELECT tbl.ip
FROM tbl
ORDER BY Val(Left(tbl.ip,3)), Val(Mid([tbl].[ip],5,3)), Val(Mid(tbl.ip,9,1)), Val(Right(tbl.ip,Len(tbl.ip)-InStr(9,tbl.ip,".")));
можно и доработать для сортировки всех диапазонов :), но это мне лень
...
Рейтинг: 0 / 0
24.12.2004, 13:45:02
    #32843783
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Пропустил, что клиент не акцессный, за что и извиняюсь. не поможет.
...
Рейтинг: 0 / 0
24.12.2004, 13:45:38
    #32843786
paparome
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Talen Shuhardдля маски я бы использовал 4 отдельных поля,по нажатию пробела прыгал в следующее + убирал бланкированные нули,например Format - ом

В принципе, можно. А потом в таблице собирать их запросом. А тоже думал над этим, но все-таки сортировка...

А вот этот вариант самый приемлемый (ИМХО)
хранишь в табле 4 поля (байтовых)
по ним и сортируешь: Order By IP1, IP2, IP3, IP4
а для вывода делаешь представление, в котором эти поля уже будут склеенные: (IP1 & "." & IP2 & "." & IP3 & "." & IP4) AS IP

И все - и нет проблем :)
...
Рейтинг: 0 / 0
24.12.2004, 13:48:36
    #32843797
Alexander G
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Пропустил, что клиент не акцессный, за что и извиняюсь. не поможет.
...
Рейтинг: 0 / 0
24.12.2004, 14:10:24
    #32843847
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Alexander GПропустил, что клиент не акцессный, за что и извиняюсь. не поможет.
Клиент на Дельфе, но он очень лихо запросы, сохраненные в БД, поднимать умеет.
...
Рейтинг: 0 / 0
24.12.2004, 14:16:54
    #32843867
Talen
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по IP адресу
Эх, мне бы контрол для ввода, да контрол для вывода в табличной форме...
Вообщем, это уже в другом форуме искать надо. Но, все равно, спасибо.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сортировка по IP адресу / 22 сообщений из 22, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]