Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
netadmin.ws
Панель управления Регистрция свободна! Календарь Список пользователей Часто задаваемые вопросы Поиск по форуму Архив скриптов Главная   
Форум сетевых администраторов
Форум сетевых администраторов Форум сетевых администраторов » Базы данных » MySQL » NestedSet
Страницы (2): [1] 2 »
Предыдущая тема     Следующая тема
Автор
Тема    Новая тема     Ответить на эту тему
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
NestedSet [сообщение #78449]

Господа! Ð_азъясните мне плз ещё такой момент, по поводу хранимых процедур (кажется так). В статье http://phpclub.ru/detail/article/db_tree описан метод хранения древовидных структур в БД, а можно ли перенести заботу о них на плечи самой БД?.. Те. написать процедуры что бы сама БД вставляла куда нужно веточки, что нужно изменяла, что нужно удаляла?..
См. доку по MySQL так и не въехал. Ð_то там возможно?.. И возможно ли тоже самое реализовать в MS SQL (там мне кажется что 99,9% это реально)??
(мне кажется это было бы ОЧЕНЬ полезным делом.. даже если придётся писать различные процедуры для этих БД)

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 15-09-2005 08:58
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78520]

Ну так что? Нет желающих этим заняться?.. Неинтересно или нереально или ненужно?..

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 07:35
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78524]

Что значит "сама БД"?
Например запрос INSERT INTO test VALUES(1,2,3) делает сама БД или нет?
Можно написать функции, например:
Есть категория, Global, под ней есть, Global1, Global2, Global3, у каждой есть ещё по 3(1-1,2-1,3-1...).
функция тебе вернёт ответ:
$global["Global"]["Global1"]["Global1-1"] = <чему-то равно>
$global["Global"]["Global1"]["Global1-2"] = <чему-то равно>
Ну и в этом роде.
Ð_то лиш наброски так скажем, а вообще нужно подумать прежде чем писать функции, типа, что нужно ещё желательно хранить идентификаторы

__________________
Всего хорошего.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 09:48
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78527]

Ð_эээ... Что то мы др. др. не понимаем...
Вы статью смотрели?.. Там есть такие штуки ка cleft, cright, level и прочее... Так их "целостность" при добавлении, удалении, перемещении веток нужно поддерживать, для этого сейчас сущ-ет класс PEAR:B_NestedSet... Я думаю о его переносе в БД, в виде хранимых процедур. Что бы не Ð_НÐ_ скрипт занимался обработкой, а БД...

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 10:20
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78535]

Мне всё равно непонятно чего ты хочешь
Ппеределать полностью "твой" движок?
Зачем отказываться от класса, если с ним всё прекрасно работает, не понимаю.

__________________
Всего хорошего.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 13:27
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78536]

Для "упрощения"... ИМХО это было бы очень удобно. С Ð_НÐ_ на SQL сервер переложили нагрузку и избавились от накладных расходов на соединение и передачу нескольких запросов связанных с добавлении, удалении, перемещении веток. Всё это делалось внутри SQL сервера... соответственно рост производительности...
"движка" нет. и этот класс не мой...
Ну это как бы просто моя идея. Сюда обратился что бы узнать актуальна ли она...

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 13:57
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78540]

Насколько мне известно, MySQL не может выполнять те же функции, что и пхп. Ð_то же БД, зачем ей "обрабатывать"(с этим и пхп замечательно справляется) информацию?
И вообще непонятен смысл всего этого. У тебя что, скрипты медленно работают? Если да, оптимизируй свой код, скорей всего алгоритм работы придуман неверно. Хочешь скорости, пиши на перле.

__________________
Всего хорошего.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 16:47
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78541]

Xel'[Naga]

quote:
Насколько мне известно, MySQL не может выполнять те же функции, что и пхп.

Значит почитай доки... Хранимые процедуры наз-ся... (я не говорю, что савсем все функции)... Зачем?.. Да затем что бы Ð_НÐ_ своими делами занимался... =) На Ð_НÐ_ и БД можно написать, но этого же никто не делает... Так и тут. То что можно свалить на БД я хочу свалить... Вообщем хотелось бы ещё чьёнибудь мнение услышать...

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 17:08
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78545]

Я поверю тебе, если ты мне скажешь мусклевсую ф-ию, которая перебирает весь массив и потом что-то делает с эл-ми этого массива
На пхп можно написать БД, т.к. это язык прогарммирования. На скл нельзя написать практичски ничего(не считая сами запросы), т.к. это язык запросов.
Глупостями ты вообщем занимаешься

__________________
Всего хорошего.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 19:52
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78547]

quote:
На Ð_НÐ_ и БД можно написать, но этого же никто не делает...

quote:
На пхп можно написать БД, т.к. это язык прогарммирования.[quote]
Вы невнимательны уважаемый... Я не отрицал эту возможность, я говорил о её нецелесообразности!..

[quote]Я поверю тебе, если ты мне скажешь мусклевсую ф-ию, которая перебирает весь массив и потом что-то делает с эл-ми этого массива

Ну до чего же невнимательный человек!.. ХÐ_АНИМАЯ ПÐ_ОЦЕДУÐ_А! Первый попавшийся пример с сайта MySQL http://dev.mysql.com/doc/

code:
CREATE PROCEDURE GEOCODE03()
BEGIN
DECLARE X_digit_one CHAR(1);
DECLARE Y_digit_one CHAR(1);
DECLARE INTOSSHEET INT;
DECLARE INTNGFIELD INT;
DECLARE strOSSHEET CHAR(50);
DECLARE strNGFIELD CHAR(50);
DECLARE lngGeoLoop INT;
DECLARE lngXINT INT;
DECLARE lngYINT INT;
DECLARE INTCOUNT INT;
DECLARE INTNUMROWS INT;
DECLARE intMIKEY INT;
DECLARE STRXINT CHAR(50);
DECLARE STRYINT CHAR(50);
DECLARE FIRSTDIG CHAR(2);
DECLARE GeoCodeCUR CURSOR FOR SELECT lpaSheetReference,lpaFieldNumber,UID FROM MIXCheckDB.IACS2003GIS;
OPEN GeoCodeCUR;
SELECT COUNT(*) INTO INTNUMROWS FROM MIXCheckDB.IACS2003GIS;
SET INTCOUNT = INTNUMROWS;
WHILE INTCOUNT > 0 DO
FETCH GeoCodeCUR INTO strOSSHEET,strNGFIELD,intMIKEY;
SET FIRSTDIG = LEFT(strOSSHEET,2);
CASE FIRSTDIG
WHEN "SR" THEN
SET X_digit_one = "1";
SET Y_digit_one = "1";
WHEN "SM" THEN
SET X_digit_one = "1";
SET Y_digit_one = "2";
WHEN "SS" THEN
SET X_digit_one = "2";
SET Y_digit_one = "1";
WHEN "SN" THEN
SET X_digit_one = "2";
SET Y_digit_one = "2";
....(Lots more of the case statement here)...
ELSE
SET X_digit_one = "0";
SET Y_digit_one = "0";
END CASE;
SET STRXINT = CONCAT(X_digit_one, MID(strOSSHEET,3,2), LEFT(strNGFIELD,2), '0');
SET STRYINT = CONCAT(Y_digit_one, RIGHT(strOSSHEET,2), RIGHT(strNGFIELD,2),'0');
SET lngXINT = STRXINT;
SET lngYINT = STRYINT;
UPDATE MIXCheckDB.IACS2003GIS SET xcoord = lngXINT, ycoord = lngYINT WHERE MIXCheckDB.IACS2003GIS.UID = intMIKEY;
SET INTCOUNT = INTCOUNT - 1;
END WHILE;
CLOSE GeoCodeCUR;
END


Устроит?..

Да что там мудрствовать:

code:
update some_table
set col = col + 1
where key = 'some_key_value'


Чем тебе не работа с переменными массива?..

__________________
Админ - вождь Апачей...

Сообщение было отредактировано he][es 19-09-2005 в 21:34

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 19-09-2005 21:18
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78549]

Ладно, спорить бесполезно.
Вот моё окончательное имхо, ты пытаешься изобрести велосипед.

Вот ещё, я считаю, что пхп(перл кстати тоже) это языки выского уровня, в них легче любого языка(в твоём случае мускл) работать(обрабатывать) с большим потоком данных, любой человек хотябы что-то писавший под пхп и например на си, дельфи меня сразу поймёт. Простой пример, в пхп не нужно объявлять переменные в начале.

В твоём случае я бы сделал так:
загнал всю базу(или только часть, в зависимости от ситуации) в массив(если база не больше объёма оп. памяти), я не расматриваю уже тот случай, что комп слабый. И работал бы с ней и поверь мне она у меня будет как минимум в 2-3 раза быстрей работать чем с твоими процедурами в мускле. Дело конечно хозяйское, но всё таки имхо ты пытаешься делать то, что тебе совсем не нужно, по крайней мере не в пхп.

В случае других языков я бы с тобой согласился, что данные процедуры пригодятся.

__________________
Всего хорошего.

Сообщение было отредактировано Xel'[Naga] 20-09-2005 в 06:58

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-09-2005 06:55
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78550]

quote:
и поверь мне она у меня будет как минимум в 2-3 раза быстрей работать чем с твоими процедурами в мускле

Ну это просто абсурд...
quote:
Stored procedures can provide improved performance because less information needs to be sent between the server and the client.

(с) Man по MySQL
Xel'[Naga] а в случае посл. примера вы бы тоже в массив переменные загоняли и обрабатывали, и это тоже быстрее работало???..

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-09-2005 07:55
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78552]

Ты так и не сказал размер своей базы. Мы может спорим впустую.

PS: Не воспринимай всё это близко, меня уже не туда понесло

PSS: Скажу тебе просто одно, если мне нужна реальная скорость, то я пишу на перле.

PSSS: Скажу ещё, всё зависит от того, что конкретно нужно делать. Я незнаю чем у тебя должен заниматься скрипт. Поэтому ты должен понимать, что все мои домыслы, могут быть не применимы к твоей задаче. Я тебе рекомендую посмотри алгоритм работы твоего скрипта(ну или нарисуй для удобства) я просто больше чем уверен, что там, что-то не так

__________________
Всего хорошего.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-09-2005 09:07
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
he][es
Участник+
Средний рейтинг: 4.07 | Оценок: 30
/нажмите чтобы посмотреть кто оценивал/

Зарегистрирован: Mar 2003
Место проживания: Барнаул, Россия
Публикаций: 1169
Статус: he][es в оф-лайне
[сообщение #78555]

Да в размерах ли дело!.. Я же не для себя конкретно... А В ЦЕЛОМ...

quote:
Скажу тебе просто одно, если мне нужна реальная скорость, то я пишу на перле.

Ð_еальная скорость - это ТОЛЬКО компилируемые языки...
ЧИТАЙ СТАТЬЮ!!! Я уже не единожды тебя туда отсылал, и говорил, что и для чего...
И скрипт НЕ МОЙ. Я хочу концепцию поменять!..

__________________
Админ - вождь Апачей...

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-09-2005 09:14
Нажмите сюда для просмотра профайла he][es Отправить Персональное сообщение he][es Найти сообщения от he][es Добавить he][es в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя
Xel'[Naga]
Участник

Зарегистрирован: Aug 2003
Место проживания: г. Зеленогорск
Публикаций: 76
Статус: Xel'[Naga] в оф-лайне
[сообщение #78567]

Ладно, завязываем пустую болтавню. Мы всё равно не понимаем друг друга.

Что значит компилируемые языки? Любой исходный код попадает в компилятор. Даже хтмл.

Ð_еальная скорость - это то, что жрёт мало ресурсов. Перл например, мало жрёт

__________________
Всего хорошего.

Сообщить модератору об этом сообщении | Предупреждение | IP: определен

Old Post 20-09-2005 12:28
Нажмите сюда для просмотра профайла Xel'[Naga] Отправить Персональное сообщение Xel'[Naga] Найти сообщения от Xel'[Naga] Добавить Xel'[Naga] в свой список друзей Редактировать/Удалить сообщение Ответить Цитируя

Страницы (2): [1] 2 »


Формат времени GMT. Текущее время 13:06.
Новая тема   Ответить на эту тему [ Версия для печати Печать | Отправить эту страницу другу/знакомому! Отправить | Получать уведомления об обновлении этой темы Подписка ] Предыдущая тема     Следующая тема
Навигация по форуму:
Оценка темы:

Правила форума:
Вы не можете создавать новые темы.
Вы не можете отвечать на существующие темы.
Вы не можете прикреплять файлы.
Вы не можете редактировать свои сообщения.
HTML теги выкл.
Спец. код вкл.
Смайлики вкл.
[IMG] тег выкл.
 

Page generated in 0.01473188 seconds (61.25% PHP - 38.75% MySQL) with 26 queries.


  Главная :: Форум :: Web ClipArt :: Поиск :: Статистика :: Топ 10 :: Публикация :: Рекомендовать
©NetAdmin.ws, 2001-2026.
Powered by: vBulletin
Copyright ©2000, 2001, Jelsoft Enterprises Limited.