База дынных "без потребностей" (VB.Net)

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
AlekseyVB
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 71
Зарегистрирован: 10.04.2009 (Пт) 18:47

База дынных "без потребностей" (VB.Net)

Сообщение AlekseyVB » 19.02.2010 (Пт) 10:44

Доброе утро!

Нужно подобрать хороший способ для хранения информации, т.е. создать базу данных с которой приложение сможет работать (считывать и вносить информацию) без дополнительного ПО. Например, насколько я понимаю, чтобы приложение могло работать с *.mdf файлами, необходим установленный SQL Server.

Наслышал о XML, существует ли возможность не переводить загруженные данные DataSet в XML, а просто сохранять данные, например, из текстовых полей или из DataGridView в XML и обратно выводить данные в DataGridView без использования объекта DataSet. Ведь DataSet работает только с источниками данных(SQLS, OLEDC, OLEDB) или я ошибаюсь?

Также есть мысли по поводу *.txt. Но данных планируется быть много и этот метод кажется примитивным.

Может есть другие варианты хранения информации, с которой приложение будет работать без дополнительного ПО?

Необходимо решение, которое будет реализовано на VB.Net

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: База дынных "без потребностей" (VB.Net)

Сообщение Денис » 19.02.2010 (Пт) 11:10

ЭксЭмЭл тормозной очень. Если целевые компы (на которых всё будет работать) не современные, то намучаешься с ними!
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

AlekseyVB
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 71
Зарегистрирован: 10.04.2009 (Пт) 18:47

Re: База дынных "без потребностей" (VB.Net)

Сообщение AlekseyVB » 19.02.2010 (Пт) 11:22

Трудно будет написать "свой формат хранения"?

С чего бы стоит начать изучение способа, посредством которого можно было бы такое реализовать на vb.net?

Dmitriy2003
Постоялец
Постоялец
 
Сообщения: 690
Зарегистрирован: 27.05.2003 (Вт) 22:47
Откуда: Deutschland

Re: База дынных "без потребностей" (VB.Net)

Сообщение Dmitriy2003 » 19.02.2010 (Пт) 12:38

AlekseyVB писал(а):Может есть другие варианты хранения информации, с которой приложение будет работать без дополнительного ПО?

Если это - телефонный справочник, почему бы и нет, в противном случае, вряд-ли вам удастся что-либо приемлемое состряпать.
Чем готовые решения не устраивают :?:

MS SQL Server (лучший выбор для .NET Разработчика) :!:

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: База дынных "без потребностей" (VB.Net)

Сообщение alibek » 19.02.2010 (Пт) 12:42

Используй Embedded-редакции MSSQL или Firebird.
Lasciate ogni speranza, voi ch'entrate.

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Re: База дынных "без потребностей" (VB.Net)

Сообщение Proxy » 19.02.2010 (Пт) 12:49

ЭксЭмЭл тормозной очень. Если целевые компы (на которых всё будет работать) не современные, то намучаешься с ними!

Смотря для каких задач. Я на тормозном компе на виртуалке поднимал SQL, заливал на него демонстрационную базу от бизнес-сервера (не скажу сколько записей точно, но не большая) и оно довольно приемлемо работало. 3-4 клиента вполне бы потянул без сильных тормозов.
Хотя если речь о каком-нибудь примитивном справочнике, то смысл в применении SQL отсутствует.
Follow the white rabbit.

jangle
Википедик
Википедик
Аватара пользователя
 
Сообщения: 3013
Зарегистрирован: 03.06.2005 (Пт) 12:02
Откуда: Нидерланды

Re: База дынных "без потребностей" (VB.Net)

Сообщение jangle » 19.02.2010 (Пт) 13:20

AlekseyVB писал(а):Может есть другие варианты хранения информации, с которой приложение будет работать без дополнительного ПО?


PropertyBag

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: База дынных "без потребностей" (VB.Net)

Сообщение Денис » 19.02.2010 (Пт) 13:48

jangle писал(а):PropertyBag


А ведь гениально же! Гениально! +1
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

ASD
Модератор
Модератор
Аватара пользователя
 
Сообщения: 1758
Зарегистрирован: 07.12.2001 (Пт) 21:08
Откуда: Russia

Re: База дынных "без потребностей" (VB.Net)

Сообщение ASD » 19.02.2010 (Пт) 13:51

SQLite. Дешево и сердито. Скорость большая, Net коннектор есть.
Moderator VBStreets
---------------------------

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: База дынных "без потребностей" (VB.Net)

Сообщение VVitafresh » 19.02.2010 (Пт) 15:38

ASD писал(а):SQLite. Дешево и сердито. Скорость большая, Net коннектор есть.

Полностью поддерживаю. SQLite, по-моему, в данном случае идеальный вариант.
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Re: База дынных "без потребностей" (VB.Net)

Сообщение Proxy » 19.02.2010 (Пт) 16:53

в данном случае идеальный вариант

В каком ещё данном случае? Автор ничего толком не описал, а вы уже ищете идеальные варианты.
А что если автор думает написать какой-нибудь ежедневник аля "hello world" например? Какой смысл нагромождать на комп SQL сервер, если он будет использоваться локально и содержать одну-две таблицы без связей, без необходимости поддержки триггеров, прав доступа и т.д?
К тому же Денис вторым постом создал тезис, который так и не был разобран. От целевого аппаратного обеспечения многое зависит.

В зависимости от задачи SQL может быть как хорошим решением, так и лишним источником проблем.
Follow the white rabbit.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: База дынных "без потребностей" (VB.Net)

Сообщение VVitafresh » 19.02.2010 (Пт) 18:37

Proxy писал(а):
в данном случае идеальный вариант
Какой смысл нагромождать на комп SQL сервер, если он будет использоваться локально и содержать одну-две таблицы без связей, без необходимости поддержки триггеров, прав доступа и т.д?

А где я писал про SQL сервер?
SQLite -- это не сервер, а скорее библиотека. Почитай здесь: http://www.sqlite.org

Proxy писал(а):В зависимости от задачи SQL может быть как хорошим решением, так и лишним источником проблем.

В каком случае SQL может стать источником проблем? Уточни, что ты подразумеваешь под SQL?
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: База дынных "без потребностей" (VB.Net)

Сообщение Хакер » 19.02.2010 (Пт) 18:40

Что может подразумеваться, кроме как язык запросов?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: База дынных "без потребностей" (VB.Net)

Сообщение VVitafresh » 19.02.2010 (Пт) 18:52

Хакер писал(а):Что может подразумеваться, кроме как язык запросов?

А у меня возникло подозрение, что Proxy подразумевает что-то другое (например MS SQL сервер). Потому что иначе непонятно, какие могут быть проблемы от языка запросов?
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: База дынных "без потребностей" (VB.Net)

Сообщение Хакер » 19.02.2010 (Пт) 19:11

Потому что иначе непонятно, какие могут быть проблемы от языка запросов?

Ну например, когда один только разбор запроса забирает столько же времени, сколько простое доставание дданных при использовании своего бинарного формата.
Плюс древовидные структуры.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Re: База дынных "без потребностей" (VB.Net)

Сообщение Proxy » 19.02.2010 (Пт) 19:35

Хакер писал(а):Что может подразумеваться, кроме как язык запросов?

Подтверждаю: Язык.
Ну например, когда один только разбор запроса забирает столько же времени, сколько простое доставание дданных при использовании своего бинарного формата.
Плюс древовидные структуры.

Подтверждаю: мысль понята верно.
Follow the white rabbit.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: База дынных "без потребностей" (VB.Net)

Сообщение VVitafresh » 19.02.2010 (Пт) 20:07

Proxy писал(а):
Хакер писал(а):Что может подразумеваться, кроме как язык запросов?

Подтверждаю: Язык.

Proxy, не подмазывайся под ответы Хакера. Ты так и не ответил:
VVitafresh писал(а):
Proxy писал(а):
SQLite, по-моему, в данном случае идеальный вариант.
Какой смысл нагромождать на комп SQL сервер

А где я писал про SQL сервер?

Из твоего вопроса я сделал (возможно ошибочный) вывод, что под любым упоминанием SQL ты понимаешь именно сервер.


Хакер писал(а):Ну например, когда один только разбор запроса забирает столько же времени, сколько простое доставание дданных при использовании своего бинарного формата.
Плюс древовидные структуры.

Свою позицию Хакер неоднократно озвучивал. И я ее понимаю и принимаю (хотя сам предпочитаю более универсальные, пусть и не всегда самые быстрые способы хранения).

Но считаю что это не есть проблемой языка запросов SQL. Это уже скорей тема для отдельной дискуссии, о том что лучше: использовать готовые универсальные инструменты и способы извлечения/редактирования данных, или использование своего узкоспециализированного, но чрезвычайно оптимизированного бинарного формата данных.

ИМХО, приложений, которые требует исключительно быстрого отклика и, соответственно, разработки специализированного формата хранения данных не так много. И я на 99,9% уверен, что для топикстартера не так важно получит он данные за 0.001 секунду или 0.1 сек., иначе бы он так и написал "нужен наиболее быстрый способ сохранения и извлечения данных".
Последний раз редактировалось VVitafresh 19.02.2010 (Пт) 21:03, всего редактировалось 2 раз(а).
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Proxy
Профессор VB наук
Профессор VB наук
Аватара пользователя
 
Сообщения: 2941
Зарегистрирован: 31.08.2007 (Пт) 4:41

Re: База дынных "без потребностей" (VB.Net)

Сообщение Proxy » 19.02.2010 (Пт) 21:01

Proxy, не подмазывайся под ответы Хакера. Ты так и не ответил

Не вижу смысла допускать тавтологию.
Отвечаю: Да, под SQL я подразумеваю язык.
Когда я писал "SQL сервер" - я подразумевал любой обработчик SQL (использующий сетевой протокол или API, требующий непосредственной инсталяции или требубщий поставки с проектом, обслуживающий множество клиентов или не поддерживающий клиент-серверную архитектуру вовсе, не суть важно).

А так же то, что обработка SQL запросов с помощью любого ПО в некоторых ситуациях затратит в разы больше процессорного времени, чем получение данных из файла с делителями. Если у автора например под БД подразумевается несколько несвязанных таблиц, то использование SQL ему вовсе ни к чему.
Follow the white rabbit.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: База дынных "без потребностей" (VB.Net)

Сообщение VVitafresh » 19.02.2010 (Пт) 21:09

ОК, пояснение принято.

Теперь, надеюсь, тема достаточно раскрыта и AlekseyVB сможет выбрать наиболее подходящий для него способ.
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

AlekseyVB
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 71
Зарегистрирован: 10.04.2009 (Пт) 18:47

Re: База дынных "без потребностей" (VB.Net)

Сообщение AlekseyVB » 20.02.2010 (Сб) 15:02

Почитал про SQLite - действительно классная штука, только теперь разобраться бы как с ним работать через vb.net...

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: База дынных "без потребностей" (VB.Net)

Сообщение VVitafresh » 20.02.2010 (Сб) 17:12

AlekseyVB писал(а):Почитал про SQLite - действительно классная штука, только теперь разобраться бы как с ним работать через vb.net...

Так же как и с любой другой базой, имеющей ADO.NET провайдер:
Использование SQLite в .NET приложениях

Провайдеры:
http://sqlite.phxsoftware.com/
http://sourceforge.net/projects/sqlite-dotnet2/

В качестве средства администрирования для первоначального создания базы и таблиц рекомендую SQLite Expert, хотя можно использовать любое другое средство или вообще все делать с командной строки через sqlite.exe
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Andrey Fedorov
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3287
Зарегистрирован: 21.05.2004 (Пт) 9:28
Откуда: Москва

Re: База дынных "без потребностей" (VB.Net)

Сообщение Andrey Fedorov » 27.02.2010 (Сб) 1:09

Непонятно - а чем обычная MDB-шка в данном случае не устраивает? База, связи, индексы - все есть в наличии и никакого SQL-сервера ей не надо...
Фиг Вам! - Сказал Чебурашка, обгладывая Крокодила Гену...

ASD
Модератор
Модератор
Аватара пользователя
 
Сообщения: 1758
Зарегистрирован: 07.12.2001 (Пт) 21:08
Откуда: Russia

Re: База дынных "без потребностей" (VB.Net)

Сообщение ASD » 27.02.2010 (Сб) 22:22

Andrey Fedorov писал(а):Непонятно - а чем обычная MDB-шка в данном случае не устраивает? База, связи, индексы - все есть в наличии и никакого SQL-сервера ей не надо...


Думаю дело вкуса. SQLite очень быстрый, opensource (хотя это неважно), используется в куче проектов где нужна быстрая однопользовательская база.
Кстате поддерживает транзакции, причем Insert при использовании их, просто мегабыстрый.

Минус. в прочем как у любых подобных баз - невозможность доступа из разных процессов (не тредов). Хотя некоторые говорят что и это как-то обходится.
Есть еще неплохой проект VistaDB но он платный. По сути это заглушка аля MSSQL+SQLite. Удобна тем что поддерживает всякие типы данных как в MS SQL и вроде не имеет блокировки
как SQLite. Но честно скажу не юзал, просто где-то про нее читал.
На CodePlex есть кажется CMS Umbro вот она ее поддерживает.
Moderator VBStreets
---------------------------

ASD
Модератор
Модератор
Аватара пользователя
 
Сообщения: 1758
Зарегистрирован: 07.12.2001 (Пт) 21:08
Откуда: Russia

Re: База дынных "без потребностей" (VB.Net)

Сообщение ASD » 27.02.2010 (Сб) 22:24

VVitafresh писал(а): В качестве средства администрирования для первоначального создания базы и таблиц рекомендую SQLite Expert, хотя можно использовать любое другое средство или вообще все делать с командной строки через sqlite.exe


Если ставить http://sqlite.phxsoftware.com/ то там прям в VS появится редактор базы.
Moderator VBStreets
---------------------------

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: База дынных "без потребностей" (VB.Net)

Сообщение MIT » 27.02.2010 (Сб) 23:25

Можно еще вспомнить про MS SQL Server CE 3.5. Замечательно работает под всеми настольными виндами (специльная редакция), мало весит (3 метра), установка не требует перезагрузки, доступен из студии. Ну и при установке легко определить факт наличия этого компонента на компьютере пользователя.
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш


Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

    TopList