Добро пожаловать к нам в гости! Наш сайт посвящён программе NeoBook, с помощью которой вы легко сможете создавать собственные мультимедиа-приложения без необходимости изучать сложные языки программирования! Зарегистрируйтесь, чтобы стать членом нашего сообщества.
Строки нужно расположить так как нужно пользователю. Нет нужной закономерности по которой можно отсортировать.
И это почему же нет? Ну это уже я просто не знаю КАК ещё объяснять? О стену голову разбить, что ли?
Пользователь может сам создать нужную ему "закономерность", выделить для нее поле, и сортировать по этому полю. В конечном итоге требуется отобразить результаты в нужном порядке, и фактическая последовательность записей в базе тут не важна.
Если же пользователю нужно просто расположить строки в базе в какой-то последовательности, то нафига тогда нужна база? Хватит и обычного текстового файла. Записи в базах идут физически друг за другом, и если бы можно было работать с базами только "линейно", то, опять-таки, спрашивается нафига нужны базы?
Осталось, действительно, только разбить голову АПСТЕНУ!
Когда ты производишь упорядочивание значков в папке, ты думаешь, что значки (и папки тоже) так и выстраиваются друг за другом на диске? Они просто ОТОБРАЖАЮТСЯ в нужном тебе порядке!!! По дате, по размеру, по последнему доступу, по типу, и т.д. и т.п. Какие критерии сортировки сам заложишь в базу, так и будешь сортировать!
А что такое фрагментация (и последующая дефрагментация) файлов ты знаешь?
Все! У меня сил уже не осталось! Сорри... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Вот, правильный вопрос, на который тебе уже был дан ответ.
Цитатаmishem ()
Ты забываешь что в НБ нет хорошо реализованной сетки, обычной таблицы По этому базу используют именно для этого случая и не только, а не по назначению.
Но ты его не понял. На что Дембель дал более развернутое объяснение.
ЦитатаDEMBEL ()
здесь база (ну помимо хранения данных) используется как табличная сетка для визуализации этих данных, а при этом вид этих данных, порядок и пр. имеет значение, в отличие от работы с базой по запросам, где представление данных в бд значения не имеет по большому счету.
ЦитатаPeter ()
Хватит и обычного текстового файла.
В текстовом файле нет возможности отобразить таблицу (сетку). Плагином же можно это сделать, плюс добавить нужное оформление. Файл базы данных в данном случае используется просто как контейнер для текстовых данных.
Я все это знаю и понимаю не хуже Дембеля! Вид имеет значение только для отображения информации, но никак не для работы с базой!!!! Но, этот "вид" ты можешь сам выстроить - все в твоих руках (и в мозгах).
Цитатаmishem ()
Давай на этом остановимся
Давно пора! Тем более, что из последнего поста я вообще ничего не понял и особенно из первой строчки. Пардон, но никакого ответа (акромя "фантазий на тему" сетки и проч.) я так и не увидел.
Речь изначально шла не о сетке, а о том как "вставить" запись. Разговор о сетке тут вообще ни пришей ни пристегни. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Peter хочет сказать, что в принципе любое пользовательское желание по оформлению данных в таблице можно представить в виде последовательности значений полей (в скрытых "столбцах", возможно даже не единственного), т.е. так можно задать любой порядок следования данных в таблице и даже динамически его менять, проводя сортировку по различным скрытым "столбцам" со значениями отвечающими за визуализацию данных.
можно задать любой порядок следования данных в таблице и даже динамически его менять, проводя сортировку по различным скрытым "столбцам" со значениями отвечающими за визуализацию данных.
ИМЕННО! Базы - исключительно гибкий инструмент для хранения и обработки информации, с ними можно творить такие вещи, которые ни с какими тестовыми файлами не сделать. И мне представляется просто кощунственным путь примитивнейшего использования баз - с банальным и жестким выводом записей в их формальной последовательности, и "вставками" через внешний текстовой редактор. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
в виде последовательности значений полей (в скрытых "столбцах", возможно даже не единственного),
Можно, если суметь предвидеть все действия.
1.Это первый текст 2.Это второй текст который ввели 3.Здесь еще текст
Этот мне нужно ввести вторым
Получится
1.Это первый текст 2.Этот мне нужно ввести вторым 3.Это второй текст который ввели 4.Здесь еще текст
Теперь это мне нужно ввести вторым
Получится
1.Это первый текст 2.Теперь это мне нужно ввести вторым 3.Этот мне нужно ввести вторым 4.Это второй текст который ввели 5.Здесь еще текст
Ну а теперь на данном примере покажите мне критерии сортировки что бы можно было так отобразить текст в таблице. С учетом того что две последние строки вводились в конец. И это не предел. Повторите эти же записи несколько раз введя их в конец, и покажите как нужно их отсортировать что бы каждая следующая введенная в конец запись находилось второй. Но не факт же что она постоянно будет второй. Она может быть третьей, пятой, последней....
ЦитатаDEMBEL ()
по различным скрытым "столбцам" со значениями
Не возможно в скрытом столбце указать интересующую информацию. Сделать можно, но это будет "в обход". Не хочешь читать хелп?
Ну а теперь на данном примере покажите мне критерии сортировки
Критерии сортировки нужно "придумывать" исходя из конкретной поставленной задачи, а у тебя в "задаче", извини, одна "вода" (первый текст, второй текст, третий...).
mishem, я ничего не стану показывать и доказывать (просто у меня есть более важные занятия, пардон), потому-что я знаю о чем говорю, и знаю что все это возможно (и не такие задачи решали), и собственного знания и понимания этого, мне достаточно.
Я уж немало приводил тебе примеров реализации "невозможного", и даже без всяких плагинов.
Не серчай, ничего личного.
Цитатаmishem ()
Не возможно в скрытом столбце указать интересующую информацию. Сделать можно, но это будет "в обход".
То невозможно, то - можно, но почему-то "в обход".
В скрытых столбцах должна быть "служебная" информация (какая - самому решать), а в "открытых" столбцах - пользовательская. Базе по-барабану по каким столбцам сортировать (скрытым или не скрытым).
Ох-хо-хо... - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
с учетом того, что таблица ТС небольшая, заполняется вручную и не будет сильно меняться, то предсказать значение поля для скрытого столбца сортировки ТС вполне в состоянии сам заранее. Либо подвергнуть порядок следования записей анализу и вывести "формулу" этого следования, на основе которой "вычислять" значение "скрытого" поля для этой записи.
В твоем простейшем случае, значением этого поля для вновь добавляемой записи может служить расчет среднего значения между крайними записями поля по позиции (в скобках, значения скрытого поля для визуализации):
1.Это первый текст (111111) 2.Это второй текст который ввели (222222) 3.Здесь еще текст (333333)
1.Это первый текст (111111) 2.Этот мне нужно ввести вторым ((222222+111111)/2=166666,5) 3.Это второй текст который ввели(222222) 4.Здесь еще текст (333333)
1.Это первый текст (111111) 2.Теперь это мне нужно ввести вторым ((111111+166666,5)/2=138888,75) 3.Этот мне нужно ввести вторым(166666,5) 4.Это второй текст который ввели(222222) 5.Здесь еще текст (333333)
чтобы получить искомый вид, вычисляем значение скрытого поля для вновь добавляемой записи, добавляем и сортируем по скрытому столбцу значений в порядке возрастания
также исходя из способа сортировки (не знаю как там в плагине сортируется) можно и текстовые метки использовать... Как задавать вопросы
DEMBEL, по-моему ты несколько увлекся, жди теперь дополнительное условие - какой-нибудь текст номер четыре на японском языке, который должен идти сразу после текста на корейском вслед за арабским..
То, что "придумать" критерии сортировки можно, и реализовать сортировку через скрытые поля - это и ежу понятно. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
этот вариант подходит для случая произвольного размещения записи в таблице. Если нужно проанализировать порядок размещения еще и исходя из содержимого записи, то будет посложнее, но ведь при размещении записи через файлик так или иначе придется делать заключение о порядковом номере записи. И это нужно будет как-то программировать в любом случае, исходя из содержимого новой записи и записей самой таблицы. Зато потом когда решение о порядковом номере будет принято, запись можно занести в таблицу на нужное место исходя из алгоритма выше и без файлика. Файлик вам по сути нужен только чтобы "втиснуть" запись на нужное место, так ведь? Как задавать вопросы
исходя из содержимого новой записи и записей самой таблицы.
Вот об этом я и говорил - нужна конкретика.
ЦитатаDEMBEL ()
чтобы "втиснуть" запись на нужное место, так ведь?
Зачем ее "втискивать" Ничего никуда не надо втискивать. Пусть запись идет себе спокойно в конец базы, "втиснуть" (рассчитать и записать) надо только "критерий" в соответствующее поле. Иначе какой тогда во всем этом смысл?
Можно, конечно, и через одно, всем известное, место: экспорт всей базы во внешний файлик, вставка на нужное место строки в этот файлик, уничтожение старой базы, создание новой, и импорт гуртом в базу из "файлика". ВО процесс!
Господи! Я не понимаю - ну, элементарная по своей идее задача, и столько "эмоций"!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
По сути, что тут пытаются сделать это переназначить дефолтный метод сортировки данных в бд на пользовательский. Для этого нужно этот свой метод сначала запрограммировать от и до, исходя из содержимого новой записи и записей всей бд, т.е. повторить по-своему весь анализ производимый движком бд при сортировках. Ежу понятно, что эта задачка тянет на написание искусственного интеллекта. При добавке записей как правило в уме оператора бд уже существует некий принцип, по которому выбирается местоположение записи, и кол-во этих принципов ограничено. Например, когда речь идет о группировке записей - тогда в скрытую метку мы добавляем известный нам идентификатор нужной группы. Можно сделать некий интерфейс добавления новой записи, исходя из набора известных условий, включаемых в метку. Ну тут мы уже пошли по кругу, повторяем функционал бд, группу можно выделить в отдельный столбец, в метку вынести порядок групп и записей в группе.
ЦитатаPeter ()
по-моему ты несколько увлекся, жди теперь дополнительное условие - какой-нибудь текст номер четыре на японском языке, который должен идти сразу после текста на корейском вслед за арабским..
такое очень сложно сделать и штатными средствами (равно как и запрограммировать это в масштабах всей бд), поэтому следует ограничиться все таки. Но в этих рамках сортировка по скрытым полям сделает почти все что можно, это зависит от программиста, способности к алгоритмизации.
Добавлено (03 Января 2015, 23:10) ---------------------------------------------
ЦитатаPeter ()
Зачем ее "втискивать" Ничего никуда не надо втискивать.
здесь не надо, я про метод предложенный на предыдущей странице, когда для произвольной вставки происходит редактирование файла с экспортированной бд Как задавать вопросы
Это звучит долго, но по факту на много проще той конструкции что предложил Дембель.
DEMBEL, для базы данных такой вариант хороший, спорить не буду, но для той задачи о которой мы говорили, изобретать сложные конструкции вместо того что бы вставить строку на указанный номер строки в текстовом файле, это как раз из той оперы где "мы легких путей не ищем".
Peter, ну если уже спор на столько наколяется, давай сделаем тестовые примеры. Ты свой, я свой.
Зачем ее "втискивать" Ничего никуда не надо втискивать.
если непонятно, то сравниваю методы в ответ mishem'у, где говорю, что в обоих случаях есть общее узкое место, а раз оно общее, то какая разница? остается что файлик сводится чисто к втыканию записи на нужное место, но это можно сделать и так, причем более выгодно, по функционалу и производительности.
ЦитатаPeter ()
столько "эмоций"!
просто вы не успокаиваетесь нужно разобрать все по косточкам и закрыть вопрос
Добавлено (03 Января 2015, 23:24) ---------------------------------------------
Цитатаmishem ()
давай сделаем тестовые примеры. Ты свой, я свой.
выбирайте оружие, каждый предложит по примеру ) я может тоже сделаю, но не сегодня, но если вы будете, то сделаю) Как задавать вопросы
Файлик вам по сути нужен только чтобы "втиснуть" запись на нужное место, так ведь?
Именно
Цитатаmishem ()
изобретать сложные конструкции вместо того что бы вставить строку на указанный номер строки в текстовом файле, это как раз из той оперы где "мы легких путей не ищем".
Именно. Я уже писала
ЦитатаCallisto ()
База планируется практически статичной, новые записи если и будут добавляться, то очень редко.
Т.ч. добавить одну-две записи раз в несколько месяцев, а то и полгода - совсем не трудно.
Но соглашусь, с добавлением поля со своими индексами более правильное решение, но меня смущает сдвиг индексов после добавленной записи. Да, сделать можно, но мне кажется, что в конкретно в моей задаче можно и обойтись. Пожалуйста, не надо ко мне на "Вы", а то чувствую себя бабулькой)
Для этого нужно этот свой метод сначала запрограммировать от и до,
Верно.
ЦитатаDEMBEL ()
повторить по-своему весь анализ производимый движком бд при сортировках.
Не обязательно полностью повторять. Тут надо выработать свой алгоритм. В принципе, даже то, что ты предложил выше уже можно использовать (дробные значения), чтобы не двигать физически записи в базе. Но, ведь необязательно делить соседние значения, а?
Свою "формулу" придумать в зависимости от, например, типа информации, "фаз Луны" и т.п.
Ну ведь есть же прекрасный пример перед глазами - сортировка файлов в папках.
ЦитатаDEMBEL ()
адачка тянет на написание искусственного интеллекта. П
Во-первых, т.н. "искусственный интеллект" - БРЕД! И выкачивание денег со спонсоров-дураков, которые в этот "интеллект" верят. Программы-то пишут ЛЮДИ!!! Какой тут, нафиг, искусственный интеллект?! Человек сам не знает кто он и зачем он, как и почему он сам думает, а создает "интеллект".
Ладно... Во-вторых, только-что привел пример с файлами в папке. И ХДЕ там "интеллект".
ЦитатаDEMBEL ()
Можно сделать некий интерфейс добавления новой записи, исходя из набора известных условий, включаемых в метку.
О! Вот это уже теплее...
ЦитатаDEMBEL ()
Ну тут мы уже пошли по кругу, повторяем функционал бд,
Отчего же?
ЦитатаDEMBEL ()
группу можно выделить в отдельный столбец,
Тоже верно.
ЦитатаDEMBEL ()
в метку вынести порядок групп и записей в группе.
Зачем? Не проще ли просто использовать скрытый "столбец меток", а деление на группы "зашифровать" в самой метке? Давайте вспомним Win-номер автомобиля, джентльмены.
ЦитатаDEMBEL ()
я про метод предложенный на предыдущей странице
Понял, пардон.
Цитатаmishem ()
давай сделаем тестовые примеры. Ты свой, я свой.
И все сразу будет видно, кто прав.
mishem, да пойми ты меня правильно: я не хочу этим заниматься, т.к. знаю, что это возможно, и нечто подобное я уже делал (когда делал на заказ пару лет назад одну программулину на NB по работе с базами данных), и сортировку делал сразу по трем полям, а тут надо всего по одному. Я лучше плагинами займусь, чем впустую буду доказывать что 2х2=4.
Добавлено (03 Января 2015, 23:59) ---------------------------------------------
Цитатаmishem ()
Это звучит долго, но по факту на много проще той конструкции что предложил Дембель.
Забыл сказать... DEMBEL, предложил, как минимум, стремление учиться работать с базами данных, а не "ай, и так сойдет".
А на счет "проще" можно ещё крепко поспорить. - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Короче, структура базы такова: Вернулась к своему первому проекту, с которого и начала знакомство с НБ. Есть основное поле, по которому и происходит все работа CodeName - заголовок кода и несколько второстепенных (сам код, описание и пр.) Так вот моя задача сортировать и выводить записи по полю с той же структурой, что и в мануале, а там записи не по алфавиту. Но я уже и сома поняла как делать. Правда уже половину реализовала средствами INI-файлов, теперь мучаюсь в выборе: оставить так или вернуться к БД Пожалуйста, не надо ко мне на "Вы", а то чувствую себя бабулькой)
Так вот моя задача сортировать и выводить записи по полю с той же структурой, что и в мануале, а там записи не по алфавиту.
Господи! И это ФСЕ? И вот ради ЭТОГО мы тут второй день слюной брызжем?
Да примера Дембеля хватит за глаза и за уши!!! - А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Не проще ли просто использовать скрытый "столбец меток", а деление на группы "зашифровать" в самой метке? Давайте вспомним Win-номер автомобиля, джентльмены.
слишком сложная метка для вычисления, учитывая чтобы метка еще и поддерживала нужную сортировку по всей бд лучше разнести инфу по разным столбцам, так и сортировка и выборка гибче будет Как задавать вопросы
Нужна не сортировка, а ВСТАВКА записи в нужную строку.
ДА ПОНИМАЮ Я ЧТО НУЖНА ВСТАВКА! П-О-Н-И-М-А-Ю !!!
Только я предлагаю не делать физически вставку, а ВЫВОДИТЬ данные в том порядке в котором требуется! И организовать этот "порядок". ВОТ И ФСЕ!!!
Цитатаmishem ()
На словах все просто, а когда доходишь до дела, появляются ньюансы.
mishem, меня этим не возьмешь - не на того напал!
К тому же:
ЦитатаPeter ()
Я уж немало приводил тебе примеров реализации "невозможного", и даже без всяких плагинов.
Будет оказия - покажу.
ЦитатаDEMBEL ()
слишком сложная метка для вычисления,
Ну не надо понимать слишком буквально. Я ж просто принцип напомнил. Базе для сортировки нужно всего одно отличающееся значение (возрастание или убывание), разряд (удобнее всего цифры). Ну, неужели ничего нельзя придумать? Каждый Охотник Желает Знать Где Сидит Фазан.
ЦитатаDEMBEL ()
лучше разнести инфу по разным столбцам, так и сортировка и выборка гибче будет
Можно (и даже перспективнее и гибче) и так. Сортировка файлов папках!
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться
Так может просто всем пообщаться захотелось, а то долгое было затишье
Возможно, просто "активная передышка" между двумя застольями. Я, например, вообще, 1-го числа о компьютере даже и не думал.
- А вам какую операционку поставить - экспи, семерку или висту? - Это ты сейчас о чем? - Олег Георгиевич, вам какой компьютер хотелось бы - молодежный или надежный? - Ну, конечно, надежный! - Вот, значит - экспи, без вопросов! Сейчас сделаем...
(Улицы разбитых фонарей, сезон 10, серия 17)
Единственная инновация Windows 8 это - Metro, чтобы дебилы по иконкам не промахивались!
При модном втюхе модоподдающимся начинает нравиться