powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / MDB+SQL?
25 сообщений из 37, страница 1 из 2
MDB+SQL?
    #32491839
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть мдб : данные+ n*клиет

работает так : мдб<--->клиент (стандартная схема)

а ежели сделать Кингуру:

мдв<-------------->клиент
мдв<---->SQL<---->клиент

т.е. с одной и той-же базой (таблицам) работать и через SQL и напрямую?
часть результатов получать через SQL а часть стандартными запросами?

чтоб не переписывать всё на адп.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491851
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Больше того, что может mdb, ты все равно не получишь, а вот замедлить такой прослойкой работу - шанс высокий.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491858
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делал я такую феню.
ставил на комп где лежит файло SQL сервер
и юзал данные из MDB-хи через опендатасоурсе
да тока это все мертвому припарки.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491870
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня есть один запросец используется часто(постоянно) выполняется долго.
для него почти все данные качаются на клиента, а потом клиент их перепахивает.
мож сиквел это быстрее сделает? хоть данные гонять не надо.
или сиквел при запросе данных с мдб - тормоз?
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491893
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>а вот замедлить такой прослойкой работу
Да нет эфект какой никакой будет
ведь между MDB и SQL сервером не будет "узкой" сети,
а юзера будут получать только готовые данные.

только затраты на подобное пректирование будут больше,
чем на стандартный переход

MDB->MDBOdbcDirect+MSSQL->ADP+MSSQL
а еще лучше три часа потерять потом за пять минут долететь :)
MDB->ADP+MSSQL

и уж никак подобный подход не является альтернативой ADP

Только как очень временная заплата на очень тяжелое место.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491904
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, я тоже думаю что если сервак шустрый, то в частном случае может быть и эффективне.
А что за запрос? Что-то мне подсказывает, что тут в сторону OLAP'а (MS AS) глядеть нужно.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491936
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Только как очень временная заплата на очень тяжелое место

в яблочко...
OLAP пока еще не копал, может быть..

а запрос построен на основании счета / пересчета по нескольким таблицам
состоит из 4 уровней вложения с суммирование и условиями на вывод

на адп переход идет, правда не так быстро как хочется.
на адп аналогичный запрос делал - рабоает заметно быстрее, правда адп+SQL.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491952
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автора запрос построен на основании счета / пересчета по нескольким таблицам
состоит из 4 уровней вложения с суммирование и условиями на вывод
Т.е. выборка?
Тогда точно, OLAP.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491975
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>OLAP пока еще не копал
Когда твой запрос полностью переведенный на MSSQL
перестанет справлятся
тогда результат запроса со всеми возможными вариациями параметров
положиш в N-мерный кубик,
пересчитывать его будеш по ночам,
а готовые заранее расчитанные данные получать из кубика быстро-быстро.
Но до этого я думаю еще далеко.
Главное помни,что все с чем сталкиваешся люди уже прошли,
и инструмент для решения твоей проблеммы уже придумали :)
...
Рейтинг: 0 / 0
MDB+SQL?
    #32491989
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
некоторые вещи не требуют олапа (особенно если объем данных умещался в недавнем прошлом в аксессе)

можно денормализовать базу по таблицам итогов или даже делать расчет в хранимке с сохранением промежуточных итогов по временным табличкам
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492011
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно можно. Только если с этим зпросом будет заниматься руководитель или аналитик, меняя 20 параметров и снова и снова запуская запрос, и это будет подгружать сервер и тормозить работу ни в чем не повинных юзеров?
Понятно, что нет четкой грани когда без AS можно прожить, а когда никак. Просто если изучить AS, многие трехэтажные процедуры на каждый случай жизни писать быстро расхочется - зачем, все же гораздо проще решается!
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492017
Фотография Latuk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все равно надо надуть щеки и делать OLAP,
хотябы потому что слово красивое :)
Да и интереснее так,
должны же програмеры хоть как-то за счет работодателя развлекатся :)

ща мы долго-долго
зато потом как все ...
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492032
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И это, в том числе.
Ну есть у меня тяга к самообразованию.
Как и у всех тех на этом форуме, кто не только спрашивает но и отвечает.
А к OLAP'у я пришел не из праздного любопытства. Жизнь заставила.
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492046
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня есть тяжкая процедура и юзают ее часто
может подскажете поможет ли мне олап ?

могу кинуть сюда суть и текст
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492114
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тем кто пробовал олап:

поможет ли он в этом случае:

есть процедура в которую в качестве строкового параметра передается название клиента

цель процедуры вывести клиентов в порядке убывания похожести

степень похожести это числовое значение зависяшее от количества комбинаций совпадения символов в имкомой строке впродряд + количество таких совпадений (блоков)

используется у меня для проверки существующих перед тем как ввести нового клиента

вот текст



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
ALTER PROCEDURE clients_find_simple (@findstr nvarchar (50 ))


AS
SET NOCOUNT ON 


declare @len int		 -- динамическая для цикла длина искомой фразы
 
declare @start int           -- с какой позиции идет поиск
 
declare @findstrlen int    -- длина искомой строки
 
declare @scale bigint 	 -- для указания класса точности при возведении в степень
 

set @scale =  3 


 --set @findstr =%af_src_str_0
 


 -- очистка искомой строки от мусора
 
set @findstr = REPLACE( @findstr ,' ОАО','')
set @findstr = REPLACE( @findstr ,' OAO','')
set @findstr = REPLACE( @findstr ,' ОАО','')
set @findstr = REPLACE( @findstr ,' ООО','')
set @findstr = REPLACE( @findstr ,' OOO','')
set @findstr = Ltrim( @findstr )
set @findstr = Left(@findstr,  39 )
set @findstrlen = len(@findstr)

declare @allvariants table (wordpart  nvarchar (50 ) COLLATE SQL_Latin1_General_CP1251_CI_AS , stepen bigint )

 -- поиск совпадений менее 3 букв не существенен
 
set @start =  1 
while @start <=  @findstrlen -  3 
begin
	set @len =  3 
	while @len + @start -  1  <=  @findstrlen
	begin
  		insert into @allvariants (wordpart, stepen) values (   '%' +  SUBSTRING ( @findstr , @start , @len ) + '%' , power(@scale ,@len) )
	set @len = @len +  1 
	end
set @start = @start +  1 
end



SET NOCOUNT Off

select  cl.id_client, cl.name, ( select sum (stepen) from  @allvariants av where   cl.name  like av.wordpart    )
from client cl with (nolock) 


	RETURN 
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492159
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2АлексеюК\r
\r
Вот по смотри на алгоритм (и ссылки на другие) нечеткого сранения строк - м.б. что-то пригодится
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492199
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а на чем там все закончилось ? так и осталось 5 минут выполнения ???

у меня 1500 строк
и 39 максимальная длина строки - на 3-5 секунд грузит сервак....

но все равно парит что долго ..
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492330
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Senin Viktor

ау, какой получился итог ?

быстрее оказалась функция предложенная ниже ?

сколько записей ?
Длинна искомой строки?
результирующее время выполнения?

или отказался и оставил вычисления на клиенте?
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492376
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2АлексейК

Да не юзал я еще эти функции, поэтому и сравнивать не с чем.
Но если бы делал - сдеал бы добавочное индексируемое поле в таблице и заполнял его в триггере по подобному алгоритму - зачем на лету считать-то?
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492526
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2АлексейК \r
тебе подойдет \r
Фильтрация формы\r
\r
я использую для поиска товара или клиентов
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492540
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня в алгоритме разбивается на сотавляющие искомая строка
здесь никакое кеширование не спасет запрашивают каждый раз разное

- разбивать на составляющие записи таблицы - это новая мысль .. но ..

думаю не получится разбивать название клиента на составляющие в связанную таблицу - сдохнет быстро .... кажется, хотя попробовать можно...

это получается если 1000 клиентов и каждое название разбить на 1000 кусочков - это 1 000 000 записей а в связи с тем что поиск по like - индекс ни простой ни полнотекстовый не спасет...

хотя можно приколоться ))
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492552
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2АлексейК

Все-равно не понятно. С чем строку сравиваешь? С данными из бд? Их можно обработать по выше описаному алгоритму. Твою строку расчитать по алгоритму (1 строка - это пару мс работы) и сравнить результат с табличным. Или я не допонял?
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492563
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по первоначальному...
запросец врядли удастся переложить на олап (пока я так думаю)
хотя для самобразования нада будет покапаться.

вопрос проста в затыкании дыр.
поставить SQL и его помощью обработать мдб , а на клиенте из результатов ХП создать таблицу - мне проще и быстрее, только хочется знать какой будет выйгрыш в быстродействии при работе связки данные_из_мдб+SQL->клиент_мдб. 30-40% я бы сделал, а ежели меньше?
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492567
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 вадя

это совсем не то.

1 у меня выводятся все варианты
2 выводятся в порядке убывания похожести

например

ищем похожесть на

Красноярский ре с ной порт

процедура выдаст:

Красноярский речной порт
Краснодарский речной порт
Фигзнаеткаковский морской порт

и так далее в порядке убывания похожести
...
Рейтинг: 0 / 0
MDB+SQL?
    #32492745
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а в SQL есть функция нечеткого сравнения , смотрел?
...
Рейтинг: 0 / 0
25 сообщений из 37, страница 1 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / MDB+SQL?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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