![]() |
|
Модераторы: diadiavova, gambit |
![]()
|
|
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Приветствую Всех!
Помогите решить проблему, нигде не нашел информации по поиску в базе данных ... ... На форме текстбокс, кнопка и листбоксы для отображения информации из базы данных (Access mdb) ... ... При вводе слова в текстбокс и нажатии кнопки организовать поиск по всем таблицам базы данных и вывести результат на форму ... Если кто сталкивался с таким вопросом подскажите как? |
|||
|
||||
| krewin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 27.8.2009 Репутация: 1 Всего: 1 |
Поиск осуществляется с помощи запросов. примерно таких SELECT user, mail FROM db WHERE user='искомый user'
|
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Приветствую!
А такой запрос поможет, если таблиц много (в смысле, картотека по годам и в каждом году несколько таблиц с разными именами) ... И если можно, "пару" строчек кода ... С наилучшими пожеланиями ... |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 1 Всего: 130 |
Поможет, если перечислить в запросе нужные таблицы. Но вообще ИМХО это изначально неправильно: на каждый год создавать новую таблицу. Логичней записывать год (или дату ввода, что там есть) в специальном поле, на которое ориентироваться при выборке. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Это однозначно неправильно и безо всяких имхов. Однотипные данные должны содержаться в одной таблице, а если понадобятся данные по конкретному году, то для этого существуют запросы. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| krewin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 27.8.2009 Репутация: 1 Всего: 1 |
mxmaks нужно знать структуру таблиц. Чтобы создать запрос. Список столбцов и таблиц ....
|
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Парни привет!
Может я не правильно пояснил ... Есть архив с 1964 года, надо его перевести в электронную картотеку с поиском и другими функциями ... Информация везде разная (№ групп, фамилии, имена и т.д.) , думал над систематизацией, но пока туго ... Думаю запустить каждый год отдельными таблицами, но может подскажете как можно по-другому ... Буду признателен за любой совет. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Ну как бы Данкинг уже подсказал, что все надо в одну таблицу поместить, в которую просто добавить поле(столбец) с годом и все. Разные таблицы должны описывать разные типы данных, с разным набором свойств. А вообще, прежде чем за проектирование базы браться надо какие-то основы изучить что ли. В сети полно материалов на эту тему http://www.google.ru/search?ie=utf-8&q...024&bih=618 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| krewin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 27.8.2009 Репутация: 1 Всего: 1 |
1964-2011 это около 46 таблиц, зачем это нужно если современный БД могут хранить строки по миллиону в одной таблице.
|
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
И даже больше, в каждом году по 5 -10 групп, но Access ругается если объединять одинаковым именем ...
Я правильно понял ?.. - создать одну таблицу и применять выборку по Item, а поиск по полю "Фамилия". |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 1 Всего: 130 |
Не понял "разности": за каждый год свои какие-то данные, которых нет в других годах? Ну так а кто ограничивает в числе столбцов. Только боюсь, что для таких объёмов выбранная СУБД не подойдёт. Кстати, не понял, на что он там ругается.
Уж я не знаю, какие там у тебя поля будут. Добавлено через 1 минуту и 12 секунд Столбцы, а не поля, т.е. Попутали меня уже совсем. Это сообщение отредактировал(а) Данкинг - 15.6.2011, 20:54 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Попробую описать алгоритм подробнее ...
1964г. в нем 5 групп, в группе 30 человек, в базе информация по каждому человеку. На форме 5 листбоксов и при загрузке каждая группа загружается в свой листбокс ... При выделении кого-нибудь информация из БД отображается в текстбоксах... Как-то так ... |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 1 Всего: 130 |
Первая таблица:
year group id 1964 1 19641 1964 2 19642 1964 3 19643 1964 4 19644 1964 5 19645 1965 1 19651 1965 2 19652 1965 3 19653 1965 4 19654 1965 5 19655 Вторая таблица: id fio birthday 19641 Ульянов В.И. 22.04.1870 19642 Коба И.В. 18.12.1878 19643 Берия Л.П. 29.03.1899 19644 19645 19651 19652 19653 19654 19655 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Если у тебя люди делятся на группы, просто возьми добавь в таблицу поле "Группа" и для каждого указывай группу, нет смысла для каждой создавать таблицу в базе. А вот как ты организуешь данные в датасете, это уже другое дело, в некоторых случаях возможно будет совсем неплохо именно разделить и для заполнения каждой таблицы датасета отправлять свой запрос. Хотя я думаю, что тоже не факт, что это понадобится. Ты можешь к одной таблице привязать несколько байндингсорсов и у каждого будет свой фильтр. Фильтровать можно и по группе и по году и как тебе заблагорассудится. Ну и собственно к этим байндингсорсам и привязывай листбоксы и текстбоксы. В конечном итоге от того, как тебе надо реализовать представление, структура базы меняться не должна. База данных проектируется по определенным правилам, одно из которых состоит в том, что однотипные данные должна содержаться в одной таблице. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Парни, всем привет!
Извиняюсь, потерялся ... (железо лечил ...). Разбирался с биндингсорсом и запутался ... Если можно пару строчек кода ... жму кнопку фильтр-группа биндингсорс грузит в листбокс1 группу1 фильтр-группа биндингсорс грузит в листбокс2 группу2 . . . и т. д. И подскажите, что почитать (кроме MSDN) Всем удачи и приятных выходных! |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Код обычно взаимодействует с объектами программы. Как ты себе представляешь эту пару строк кода? Я уже не говорю о том, что там бОльшую часть работы придется в дизайнере делать. Создай проект, добавь в него базу данных, создай структуру данных, внеси в базу некоторых набор записей, с которыми можно работать, построй простенький интерфейс(листбоксы, кнопки и всякое такое), опиши, что конкретно ты хочешь, чтобы делала эта программа и выложи проект. Тогда можно будет взять и добавить в нее то, что ты сам не можешь сделать и выложить обратно. А так я не знаю чем можно помочь. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Приветствую!
Сделал типовой проект (возможно, что-то упустил). Посмотри, пожалуйста, как рассортировать ... На таком примере, думаю будет легко понять и осмыслить работу с БД ... Разделил на два файла (проект здесь, а база данных в следующем ...) Присоединённый файл ( Кол-во скачиваний: 3 )
catalog_1.rar 247,22 Kb |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
||||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
mxmaks, Я полагаю, ты забыл кое о чем. Я ведь просил описание того, что надо сделать. Какие данные в какой элемент управления выводить и как это должно себя вести. Кроме того, неплохо было бы давать элементам управления понятные имена и не использовать в именах кириллицу.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Приветствую!
Мне показалось, что так доступнее пониманию, а по поводу алгоритма: - кнопка 2000 => выборка 2000-го года и распределение по листбоксам (группам) - поиск => вводишь фамилию и попадаешь на первую - кнопка > => вперед (если несколько совпадений) - прогрессбар показывает, что не заклинило ... Вроде все логично, но могу и ошибиться ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Как именно? С именами типа Button1 и Button2? Не совсем понял, у тебя там группы имеют значения 10, 20, 30, 40, 50, 60. Каким образом их распределить между двумя листбоксами? Может лучше при фильтрации сокращать список в листбоксе и в нем же выбирать, а отображать в текстбоксах? Мне кажется так логичнее было бы. Добавлено через 28 секунд Не очень понял что это значит. Добавлено через 2 минуты и 22 секунды Годы тоже можно в каком-нибудь комбобоксе выводить, не будешь же ты кнопку для каждого создавать? -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Вы сами рекомендовали ввести поля "год" и "группа" и фильтровать по этим параметрам ...
Да, под каждый год создана кнопка при нажатии на которую выводится (фильтр по группам) инфа в листбокс1 (группа 1), во второй листбокс -группа2 и т.д. 10 и 20 - это группы одного года, 30 и 40 - другого, это для наглягности ... Смысл заключается в том, чтобы нажать на кнопку года и в листбоксах получить группы за этот год, выделив фамилию в листбоксах, в текстбоксах отобразить подробную информацию. При поиске найти фамилию и отобразить год (в листбоксах, где она встретилась, если несколько, то вперед и назад). Прогрессбар. При нажатии кнопки года, пока грузится база данных, показать, что БД грузится. Список в листбоксах жесткий (это список людей и его нужно видеть весь), да и пользователю будет неудобно лазить по комбобоксам ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
А нельзя было создать группы 1 и 2, чтобы сразу было понятно, что куда пихать? Что теперь составлять таблицу, в которой будет содержаться информация о том, какая группа куда идет что ли? Добавлено через 1 минуту и 21 секунду
Так группы или фамилии? Добавлено через 2 минуты и 17 секунд Теперь уже год в листбоксах надо отображать? Добавлено через 3 минуты и 9 секунд Определись, что именно должно быть в листбоксах. Или используй DataGridView. Листбокс должен что-то одно отображать. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Эта программа для "блондинок"...
Программа-картотека : - нажал на год, получил список групп ... - выделил фамилию, получил краткую информацию ... - нажал на "Личное дело", запустился AdobeAcrobat и открыл pdf-файл (отсканированные документы). - в поиске набрал фамилию, попал на первое совпадение (однофамильцев много), нажал далее попал на второе совпадение и т. д. Вот, собственно, и весь алгоритм ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Я не понимаю чего ты хочешь. Получил список групп, что это значит? Где должен быть этот список? В листбоксах? Тогда где будут фамилии? Ну если надо открыть файл, то зачем ты его в базу загнал, хранил бы как файл? Добавлено через 5 минут и 11 секунд И опять-таки я не понял как определить, какую группу в какой листбокс пихать -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
При поиске (если совпало) в листбоксе отобразить не год, а фамилию в группе (т.е. аналог нажатия на год).
При совпадении показать, где оно находится ... Сам запутался ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Не понял. Нет такого элемента управления как группа. Мне нужно, чтобы ты конкретно сказал, какой элемент управления для каких целей предназначен. Добавлено через 5 минут и 38 секунд Или я могу сделать все по-своему и тебе придется тогда разбираться, как это переложить на твой случай. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
ДядяВова, в листбоксы выводятся только фамилии ...
В текстбоксы - только инфа выделенной фамилии ... В базе данных за каждой фамилией закреплен свой pdf-файл ... В первый листбокс - группу "1" ... Во второй листбокс - группу "2" и т.д. В проекте это все видно или я что-то упустил ... (В проекте нет фильтрации и распределения). |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
У тебя нет группы 1 и группы 2. Каким образом из тех номеров групп, которые содержатся в базе следует получать 1 или 2? Перечитай, как ты все это излагал и сам подумай упустил или нет. Но насчет групп все таки ответь, потому что я этого все равно не понял. Например группа 30 идет в первый листбокс или во второй? Это все таки программа и ей надо это точно объяснить. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Если открыть таблицу в Access там видно, что в 2000г. две группы - 10 и 20, в каждой группе по две фамилии, в 2001г. -30 и 40, и т.д.
При нажатии кнопки "2000г.", в первом листбоксе появятся две фамилии из группы 10, а во втором листбоксе - две фамилии из группы 20. При нажатии кнопки "2001г.", в первом листбоксе появятся две фамилии из группы 30, а во втором листбоксе - две фамилии из группы 40. При нажатии кнопки "2002г.", в первом листбоксе появятся две фамилии из группы 50, а во втором листбоксе - две фамилии из группы 60. Добавлено через 5 минут и 8 секунд Группы 1 и 2 указаны в кавычках, я имел в виду механизм распределения, а не конкретную информацию ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
mxmaks, все что ты написал о группах не имеет никакого отношения к тому, о чем я спросил Я задал простой вопрос:
А из твоих объяснений не следует ровным счетом ничего. Тот факт, что в каждом году по две группы еще не говорит о том, какую из них в какой листбокс загружать. Кроме того, когда тебе говорили про группы, то имелось в виду, что у группы должен быть такой идентификатор, чтобы по нему можно было все сразу определить. В твоем же случае, судя по всему, придется сначала загрузить все данные по году, а только потом уже сравнивать их и выявлять группы, что в принципе бред. Сделал я тебе пример, честно говоря мне самому не это не нравится, но это то, что ты просил(примерно ессно), группы я переименовал в 1 и 2 в самой базе, но ты можешь сделать как тебе удобно. Ссылка на архив здесь http://narod.ru/disk/17392922001/catalog_1.rar.html Для реализации функционала фильтрации данных есть разные подходы, я реализовал только один, потому что, как мне показалось, это самое нужное из того, что надо знать. Состоит он в том, что данные грузятся все, а потом для выведения они фильтруются уже из памяти. Это не подойдет для больших баз, поскольку займет много места в памяти, там придется каждый раз обращаться к базе или использовать смешанный подход. Если что будет непонятно - спрашивай. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Приветствую!
ДядяВова ты говорил про биндингсорсы, они не применяются? Как открыть pdf в Акробате? Спасибо за пример, поковыряюсь. Добавлено через 7 минут и 48 секунд И еще вопрос, примерно 10 тыс. записей - это много? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Как это не применяются? Там их аж 3: Table1Grop1, Table1Grop2 и Table1TextBoxes(вроде так называются). Ну вот в этом-то и проблема. Ты зря их в базу забил, теперь только извлекать их оттуда, сохранять во временное расположение и потом запускать как обычный файл. А вообще всякие личные дела лучше хранить в виде сущностей базы данных, а при необходимость можно экспортировать отчеты в разные форматы. Смотря какие записи. Если там простейшие сведения, то видимо нет, а если к каждой записи еще грузить какой-нибудь тяжелый файл, то может и пара десятков оказаться непосильной ношей для компа. Тут все очень индивидуально. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Добрый вечер!
Приношу извинения сразу не обратил внимание ... По поводу записей, их не много (год, группа, фамилия, имя, отчество, адрес, дата поступления, дата окончания, номер диплома, примечание), все текстовые записи, но их около 10 тыс. Может есть смысл разделить на несколько таблиц? ДядяВова, а как можно поступить с файлами pdf (это отсканированные личные дела)? Из твоего примера узнал много нового и интересного, спасибо. |
|||
|
||||
| diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Запись - это строка таблицы, а столбцы называются полями. Давай примерно прикинем: год - если это целое число, то 8 байт дата - точно не помню, но возьмем к примеру 16 х 2(две ведь даты) группа - 8 номер диплома - 8 фамилия - к примеру 30, имя и отчество - тоже, так что всего 90 примечание - не знаю сколько ты выделил, но к примеру 256 символов и байт соответственно. Всего около 500 байт, умножаем это на 10000, получается что-то в районе 5 мб. Выдержит твоя машина такой объем данных? Понимаю, грубо все подсчитано, но масштаб нагрузки можно оценить. Таблицы не для этого предназначены. Если тебе надо загрузить не все данные, для этого есть запросы, которые умеют очень много. А разные таблицы в базе нужны для того, чтобы хранить в них разнотипные данные.
Ну я же писал, что можно хранить их в файлах, а в базу вносить имя файла. Иначе тебе придется каждый раз сохранять во временный файл и запускать его. Да и лишняя нагрузка на базу ни к чему, это только замедлит ее работу. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
||||
|
|||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
А как еще можно организовать открытие pdf из программы, все-таки конфедициальная информация и хранить ее открыто как-то "нельзя"...
Что-нибудь можешь подсказать? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Ну я же говорю: сначала сохраняешь во временный файл, а когда становится ненужным - удаляй. Но в принципе, если есть возможность данные забить в базу, а не файл, то надо так и сделать. Хотя, если дела сканируются, то сделать это будет непросто. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Вечер добрый!
ДядяВова, меня посетила мысль, а что если pdf-формат поменять на другой и хранить файлы рядом с базой, а в базе указать ссылку, но при вызове поменять формат в программе и открыть как pdf или в программу загнать просмотрщик. По-этому поводу, что можешь сказать ...? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
В каком смысле поменять формат? Ты о расширении что ли? Хочешь заменить расширение, чтобы скрыть информацию? -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 1 Всего: 130 |
Храни каждый файл в RAR-архиве с паролем в 15 символов - и будет счастье. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Ну для шифрования и так инструментов достаточно, зачем же рар использовать.
http://msdn.microsoft.com/ru-ru/library/0ss79b2x.aspx Вот отсюда можно начать. И опять-таки в базу это тоже можно забить и зашифровать. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 1 Всего: 130 |
Всё лучше, чем переименовать .pdf в .txt и вводить этим в заблуждение блондинок. Так это понятно, алгоритмов-то множество. -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Дело не в алгоритме, а в том, что во фреймворке есть собственные апи криптографии. Нет смысла использовать сторонние компоненты, да еще и платные(вроде бы). -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Парни, все Ваши комментарии интересны, но я хотел подтолкнуть Вас к мысли как реально реализовать такую проблему (проблему открытия
файлов из БД в виде отсканированных файлов) ... К тому-же этих файлов ооочень много ... Я мыслил сделать "кривое" расширение, но "перерасширять" в программе и выводить для просмотра через ссылки на файл (ссылки в БД) ... Была мысль сделать "внутренний" просмотрщик ... И кстати вопрос : Можно ли шифровать pdf ? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Ну тебе же объяснили, что этим можно Шифровать все можно, поскольку шифруются байты. Шифруешь файл и хранишь его в таком виде. В базе у тебя имя этого файла(какой-нибудь уникальный идентификатор), все файлы храни в одной папке. Когда понадобится открыть файл, найдешь его по имени, дешифруешь, сохранишь временно, откроешь в акробатридере. Когда он будет не нужен - удалишь. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Подскажите, как это практически реализовать ...
Теоретически все понятно, но практически где копать? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
А тебе разве не подсказали? По поводу шифрования я дал тебе ссылку, там в разделе(в ветке MSDN) есть ряд топиков, которые надо изучить. Ты не задаешь вопрос, а говоришь: "Сделайте за меня.". -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Ты меня, конечно извини, но на вопрос: Где Африка? - Ответить: Где-то Там! ...
И думаю, что эта не та информация, которую нужно так зашифровать, а потом думать Ё МОЁ, ЧТО Я СДЕЛАЛ? Но все-равно спасибо.
Не прошу сделать за меня, а на примитиве, типа 2х2=4, понять как это работает ... Но пока только слова: это-плохо, это-не очень ... Мастер показывает ученику, как рубить мечом, а ученик применяет знания в битве ... Как-то так. А MSDN я пользуюсь ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Я тебе не где-то там ответил, а дал конкретную ссылку на ветку, в которой описывается что и как шифруется. В этой ветке есть и примеры и пошаговые руководства. Что еще нужно-то? Скопировать примеры из мсдн? Или моим примерам ты больше доверяешь? Или может скопировать оттуда сюда? Вот здесь тебе чем не подходит пример? http://msdn.microsoft.com/ru-ru/library/ms229741.aspx Находится в той же ветке, найти не сложно. Но вообще вопрос надо изучить подробнее. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 1 Всего: 130 |
Ну я же говорю: если файл .pdf переназвать в .doc, то никакая блондинка его не откроет. А брюнетка уже догадается открыть файл тем же просмотрщиком Тотал Коммандера и посмотреть на начало файла. У PDF будет нечто вроде "%PDF-1.3", у DOC - "РП". -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Всем Привет!
Последний глупый вопрос ... Круто шифровать - как-то глуповато, хотелось бы под обычный пароль ... Поэтому вопрос: Можно ли, не загружая БД найти файл и запустить? Еще раз извиняюсь. Буду благодарен за любой отклик. Мы Все учились по немногу, чему-нибудь и как-нибудь ... |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Всем Привет!
ДядяВова, подскажи, пожалуйста, как вставить ссылку на файл в таблицу БД Access и вызвать ее из программы, что-то запутался... Очень благодарен за пример, многому научился ... (Побольше бы такого способа обучения ... ) А по-поводу:
думал форумы это когда профессионалы помогают учиться, а не общаются только между собой ... извиняюсь ... |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Тут строгих правил нет, но решить эту проблему несложно, например можно разместить все пдф-файлы в один каталог, дать каждому уникальное имя и имена файлов внести в базу. В самой программе будет храниться путь к каталогу(например в параметрах приложения). Дальше выводишь ссылку в любом удобном для тебя виде(например как ты делал, с помощью кликабельной картинки), в обработчике клика запрашиваешь из базы имя файла, находишь его в каталоге с файлами и открываешь. Если файл зашифрован, то расшифровываешь, сохраняешь во временный каталог и открываешь оттуда. Помогают - да, делают за тебя - нет. Есть у нас Центр помощи, есть фриланс биржа, там можно попросить чтобы сделали. Здесь могут сделать маленький пример, если его сделать проще, чем объяснить как сделать. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| mxmaks |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 16.1.2011 Репутация: нет Всего: нет |
Приветствую!
Спасибо за разъяснения, я уже на полпути к решению проблемы ... Еще поковыряюсь ... |
|||
|
||||
![]()
|
| Правила форума VB .NET | |
|
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |