Хорошая бесплатная альтернатива MS Access [закрыто]


102

Рассмотрим необходимость разработки легкого настольного приложения БД на платформах Microsoft.

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

Требования:

  • легкое распространение среди других
  • нет проблем с лицензированием во время выполнения

Соображения и кандидаты:

  • База из пакета OpenOffice . Меня беспокоила его стабильность.
  • MySQL + написание собственного кода БД на C ++ или Python, или что-то еще кажется довольно тяжелым решением.

Вопрос : Какие есть недорогие или бесплатные альтернативы базам данных MS Access?


См. Также: Системы отчетности с открытым исходным кодом



@Schnapple

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


@Remou,

Нет, я не знал, что среда выполнения MS Access 2007 бесплатна; Спасибо что подметил это. В прошлый раз, когда я потрудился исследовать это (не помню, когда это было), я думаю, что это была довольно дорогая лицензия для среды выполнения, потому что я думаю, что они пытались продать ее корпоративным ИТ-отделам.

И спасибо всем, кто откликнулся; Я совершенно не знал о тех других вариантах, на которые вы все указали.


3
Все решения, предложенные в выбранном ответе, касаются серверной части (самой db). Распространение базы данных по самолетам никогда не требовало никаких затрат! Так что этот вопрос немного сбивает с толку, если pcampbell ищет интерфейсную часть, серверную часть или и то, и другое.
Патрик Онорез, 06

1
@ Патрик Онорез, изначально вопрос задавал не pcampbell; Я сделал. Я только что преобразовал его в Community Wiki давным-давно, и pcampbell был последним, кто его редактировал. Я хотел что-то, что включало бы серверную часть, визуальный механизм запросов и отчетов. Backend прост - визуальные запросы и отчеты, которые я никогда не встречал, кроме Access.
Онорио Катеначчи,

Я не обнаружил, что Access нестабилен, при условии, что у вас есть правильная JRE. Также можно попробовать Libre Office Base. Хотя вы можете импортировать таблицы из Access и хотя вы, вероятно, не ожидаете, что сможете запускать в нем VBA, вы также не можете импортировать формы. Кроме того, OOBase - вполне жизнеспособная БД (по крайней мере, для небольших баз данных с меньшими требованиями).
CodeLurker 08

Ответы:


61

Здесь следует иметь в виду, что продукт MS Access - это гораздо больше, чем просто ядро ​​базы данных. Он предоставляет полную платформу разработки приложений, включая конструктор форм и меню, язык и среду клиентского приложения (VBA), а также дизайнер отчетов. Если взять все это вместе, у MS Access действительно нет равных.

Но в рамках этого вопроса нас интересует необработанный движок базы данных. С этим в мыслях:

На ум приходят SQLlite ,
Firebird ,
VistaDB (не бесплатно),
SQL Server Compact Edition (не Express)
и теперь SQL Server LocalDB
.

Еще одна мысль: хотя исходный вопрос действительно касается настольных баз данных, вполне вероятно, что некоторые люди попадут сюда в поисках базы данных для использования с веб-сайтом. Важно помнить, что все это внутрипроцессные базы данных, и поэтому они редко, если вообще когда-либо, подходят для использования в Интернете. Если вы хотите создать веб-сайт, где обычно требуется поддержка значительного одновременного доступа, вам обычно нужен механизм сервера базы данных , такой как MS SQL, Postgresql, MySQL, Oracle или их собратья. В то же время эти серверные механизмы редко, если вообще когда-либо, подходят для однопользовательского настольного приложения.


... кроме Firebird, который выходит за границы и может использоваться в любом сценарии. Однако хорошие моменты.
user60401

7
SQLite, мне это нравится.
Аликс Аксель

Почему SQL Server Compact Edition, а не Express? Это просто из-за размера?
Mark3308 09

@Mark - Express Edition по-прежнему является базой данных серверного класса, а не внутрипроцессной базой данных, как другие. Прочтите вторую часть ответа, и все, что там говорится о серверных механизмах (включая последнее предложение), относится к Express Edition.
Joel Coehoorn 09

Хорошо, я не знал, что база данных Compact Edition находится в обработке. Спасибо что подметил это.
Mark3308

127

Когда люди спрашивают о замене Access, многие из них думают только о базе данных, но на самом деле они спрашивают обо всех других функциях Access. Обычно им все равно, какую базу данных использует Access.

Некоторые из функций, предоставляемых Access, включают: формы, создание запросов, отчеты, макросы, управление базами данных и какой-то язык, когда вам нужно выйти за рамки того, что предоставляют мастера.

SQLite , MySQL и FireBird - это бесплатные серверные части базы данных. В них нет встроенных дополнительных функций Access. Любые бесплатные альтернативы Access требуют объединения чего-то вроде SQLite и языка разработки.

Вероятно, лучшим бесплатным вариантом будет SQLite и Visual Basic 2008 или C # 2008 Express Edition. . Это будет сильно зависеть от времени выполнения, поэтому установка на голом клиенте может занять довольно много установщика.

На самом деле нет бесплатного варианта без доступа с минимальными требованиями к времени выполнения. Я бы хотел, чтобы это было.

Мне будет интересно услышать, знает ли кто-нибудь хорошие альтернативы.


5
да ... люди не осознают силу доступа как интегрированной среды разработки, как вы подчеркнули ... нет ничего бесплатного, что можно сравнить с доступом Microsoft даже с большинством (не говоря уже обо всех) встроенных функций. когда у вас есть доступ ... вы можете делать многие вещи за доли времени, которые требуются для достижения другими способами ... 100% согласны с вашим ответом @bruceatk
ihightower

69

Вы знаете, что среда выполнения Access 2007 можно загрузить бесплатно?

Ссылки на более новые версии:


2
Я почти уверен, что лицензии среды выполнения Access 2003 не были бесплатными ... но да ... с Access 2007 вам не нужно платить за лицензии.
Brett G,

68

Шнапл спрашивает:

Вы имеете в виду концепцию бесплатной базы данных для распространения с приложением или базу данных типа Access «один файл, без установки»?

Э-э, никто, кто имеет хоть какую-то компетенцию в разработке приложений Access, никогда не будет распространять один MDB / ACCDB в качестве хранилища приложений / данных. Любое нетривиальное приложение Access необходимо разделить на интерфейс с формами / запросами / отчетами (то есть объекты пользовательского интерфейса) и серверную часть (только таблицы данных).

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

Прежде чем отвечать на вопросы, узнайте о Access:

  • Access - это инструмент разработки приложений баз данных, который поставляется с ядром базы данных по умолчанию под названием Jet.

  • Но приложение Access может быть создано для работы с данными практически в любой серверной базе данных, если для этого ядра базы данных есть ISAM, драйвер ODBC или OLEDB.

Сама Microsoft хорошо постаралась скрыть разницу между Access (средство разработки) и Jet (ядро базы данных), поэтому неудивительно, что многие люди не осознают разницу. Но разработчики должны использовать точный язык, и когда вы имеете в виду ядро ​​базы данных, используйте Jet, а когда вы имеете в виду интерфейсную платформу разработки, используйте Access.


Технически, Дэвид, в Access 2007 и более поздних версиях файлов он использует версию Jet для Office, которая называется Access Connectivity Engine (ACE).
Bobort 07

17

Если честно - бесплатных альтернатив MS Access нет. По крайней мере, если вы имеете в виду инструмент разработки баз данных (формы, отчеты, запросы, поддержку VBA и т. Д.). Если вы думаете о MS Access как о движке базы данных (на самом деле вы имеете в виду MS Jet или ACE), то да - у вас есть много возможностей. Существует множество бесплатных движков баз данных, наиболее популярными из которых являются MySQL и PostgreSQL. Я могу порекомендовать и то, и другое - зависит от того, чем вы хотите заниматься.

C ++ - один из худших вариантов для написания внешних интерфейсов баз данных. Вы должны рассмотреть MS Visual C #, MS Visual Basic .NET или ... Даже Java / Swing (если мы говорим о настольном приложении). Если вы думаете о веб-интерфейсе, подумайте о PHP (с MySQL или PostgreSQL на бэкэнде) или ASP.NET (с сервером MSSQL на бэкэнде).

Я настоятельно рекомендую вам не использовать C ++ для такой работы. Этот язык очень эффективен и гибок, но продвинутая разработка интерфейса базы данных на C ++ - не лучшая идея. C ++ отлично подходит для системного программирования, разработки игр, математического и физического моделирования везде, где эффективность является ключевым фактором - например, в приложениях реального времени и т.д. функции (например, сортировка, раскраска и т. д.). Если вы ищете бесплатные инструменты - может быть, C # Express или Visual Basic.NET Express 2008 будут правильным выбором? Или, может быть, Java / Swing (проверьте IDE NetBeans)? Может, SharpDevelop? Но не C ++ ... Оставьте C ++ для того, что ему больше всего подходит.


15

Проверьте suneido .

Несколько лет назад я сделал довольно сложное приложение ГИС в качестве эксперимента с ним (база данных, сложный графический интерфейс, отчеты, клиент / сервер). Это был приятный опыт (не считая некоторых проблем с документацией ...), и я очень быстро освоил его.

Больше не использую в основном потому, что:

  • это не совсем универсальная цель
  • это не кросс-платформенный (только для Windows)
  • Я решил перестать изучать экзотические технологии и сосредоточиться на чем-то более массовом.

10

Из альтернатив бесплатного программного обеспечения они еще не упоминались:

Я также буду следить за тем, какие инструменты DB RAD предлагает сообщество Flex / Air, поскольку с этими инструментами можно получить унифицированный рабочий стол и веб-интерфейсы.


1
Рекалл кажется мертвым, а Глом - незрелым и еще мало использованным. Я бы полностью пропустил парадигму клиент-сервер и выбрал что-нибудь Web 2.0, например WaveMaker.
Робин Грин

1
Похоже, что Glom не обновлялся с 2012 года, поэтому, вероятно, на данный момент мертв.
WhatEvil

9

Oracle XE с Application Express.

  • Имеет приятный веб-интерфейс,
  • "Настоящая" база данных
  • Возможность масштабирования за пределы одного рабочего стола
  • Предлагает четкий масштабный путь за пределы небольшой команды
  • Приложения как веб-приложения, легко доступные.
  • Может конвертировать электронные таблицы Excel в приложения

7

Проблема заключается в поиске альтернативы MS Access, которая включает в себя визуальную среду разработки с перетаскиванием и «разумной» базой данных, в которой весь комплект и набор могут быть развернуты бесплатно.

Моим первым предложением было бы взглянуть на этот очень полный список альтернатив MS Access (многие из которых бесплатны), а затем взглянуть на этот список инструментов разработки баз данных с открытым исходным кодом на osalt.com.

Мое второе предложение - попробовать WaveMaker, который является своего рода PowerBuilder с открытым исходным кодом для облака (отказ от ответственности: я работаю там, поэтому не должен рассматриваться как беспристрастный источник информации ;-)

WaveMaker сочетает в себе IDE с перетаскиванием и серверную часть Java с открытым исходным кодом. Он под лицензией Apache и может похвастаться сообществом разработчиков из 15 000 человек.


Я считаю, что оценки по процитированному URL-адресу весьма благосклонны к альтернативам Access. Ни один из них на самом деле и близко не подходит к воспроизведению набора функций Access. Это не означает, что они являются отличным выбором для любого количества проектов, просто они не могут заменить все, что делает Access. Единственная известная мне платформа, которая подходит близко, - это FileMaker, который сравнительно слаб с точки зрения написания сценариев и передачи данных.
Дэвид-В-Фентон

Хорошая ссылка @C Keene. Спасибо, что поделились этим.
Онорио Катеначчи,

Я согласен с вами, @David Fenton - MS Access - очень зрелый и полнофункциональный продукт. Если вам нужно что-то, что делает все, что делает MS Access, тогда MS Access - единственный продукт, отвечающий вашим требованиям. «Правильный ответ» сводится к тому, на какие конкретные компромиссы вы готовы пойти (например, ограниченные сценарии или отчеты) и какие другие преимущества вы получаете от новой платформы (например, с открытым исходным кодом, на основе Java и т. Д.)
Си Кин,

7

NuBuilder ( www.nubuilder.net ) может быть прав.

NuBuilder - это веб-приложение PHP под лицензией GPLv3, которое требует MySQL в качестве внутренней базы данных. Пользователи и программисты используют веб-интерфейс.

Они продвигают его как бесплатную альтернативу MS Access в Интернете. Сейчас я создаю свое второе приложение NuBuilder. NuBuilder, кажется, очень активно развивается, и я нашел его стабильным и хорошо документированным (при условии, что вы можете выдержать видеоуроки).


6

Вы можете изучить SQLite ( http://sqlite.org/ ). Однако все зависит от вашего использования. Например, параллелизм - не его главное достоинство. Но, например, Firefox использует его для хранения настроек и т. Д.


6

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

Если вам действительно нужно все это, то вы говорите о гораздо более крупной и сложной среде выполнения. Вы больше не найдете ничего «легкого». Даже сам MS Access больше не соответствует требованиям, потому что он вряд ли легкий. Это просто удача в том, что у многих пользователей он уже может быть, поэтому он кажется легким.

Это не значит, что вы ничего не найдете. Просто он вряд ли будет иметь такой же уровень зрелости или распространения, как Access, тем более что базовый механизм доступа уже встроен в Windows.


6

Лицензия времени выполнения Access никогда не была такой дорогой - стоимость инструментов / расширений разработчика составляла около 300 долларов, насколько я помню (это было бы еще до Access 2 Developers Toolkit, или ADT), но это дает вам возможность распространять ваше приложение со средой выполнения среди неограниченного числа пользователей. Пока ваше приложение среды выполнения использовалось тремя или более пользователями, вы экономили бы деньги (при условии, что установка полной копии Access будет стоить 100 долларов США на пользователя).

Среда выполнения для Access 2007 полностью бесплатна, но на самом деле стоимость до этого была не такой уж большой.

Марк Гравелл добавил (на мой взгляд, в том, что должно было быть комментарием): «
Быть свободным, тем не менее, безусловно, является стимулом для людей, которые хотят попробовать, а цена в 300 долларов действительно обескуражила бы».


5

VistaDB имеет бесплатную экспресс-версию, синтаксис и драйвер которой совместимы с SQL Server. VistaDB - это отдельный файл, и для работы в вашем проекте asp.net или winforms требуется только драйвер .dll.

Поскольку он совместим с синтаксисом и источниками данных, при необходимости вы можете перейти на SQL Server.

со своего сайта:

VistaDB - это полностью управляемые и безопасные по типу приложения ASP.NET и WinForms, использующие C #, VB.NET и другие CLR-совместимые языки.

VistaDB.net


5

Вы упомянули Python, рассматривали ли вы Дабо?

http://dabodev.com/

Это позволило бы избежать большой рутинной работы в пользовательском приложении.


4

Вы имеете в виду концепцию бесплатной базы данных для распространения с приложением или базу данных типа Access «один файл, без установки»?

Например, для таких вещей, как SQL Server Express Edition, требуются такие вещи, как установка среды выполнения, создание и подключение баз данных, записи в меню запуска людей, которые они не узнают (моя жена спросила, почему на днях SQL Server был на ее ноутбуке) тогда как базу данных Access можно запустить в одном файле.

Я предполагаю, что я спрашиваю, хотите ли вы думать о базе данных как о документе, в который вы пишете, или как о экземпляре чего-то на чужой машине?


4

А как насчет r: Base? Давным-давно r: Base была очень надежной DOS (затем Windows) RDMBS, и это были дни до Access / до Paradox. Его ближайшим конкурентом был dBase, но в то время он не был полностью реляционным. Я разработал несколько очень хороших приложений r: Base И, как и Access сегодня, имел встроенный генератор отчетов, средства форм, запросов и управления таблицами .. К моему удивлению, он все еще жив! http://www.rbase.com/ Кажется, у него есть все, что предлагает доступ. Возможно, вам стоит подумать.


1
Вау, я подумал, что r: Base тоже пропало. Хорошая ссылка Оптимально.
Онорио Катеначчи

@SmartMethod, есть ли у вас скрытый инструмент от RBase (* .rbf) до какой-то другой БД, например Access или MSSQL?
Admiral Land

@Admiral Land - не в недавнем прошлом, нет. Прошло довольно много времени. Последнее, что я сделал, это r: Base to MS SQL Server еще в начале 2010 года для клиента.
Taptronic 02

1
@SmartMethod, я решил свою проблему, спасибо!
Admiral Land

4

Kexi 2007.1.1 может быть тем, что вы ищете.

Его экспресс-версия бесплатна, но размер БД ограничен. Полная версия стоила 72 доллара.

Описание с его домашней страницы: Kexi - это простое в использовании приложение для визуального проектирования баз данных для Linux и MS Windows. Kexi конкурирует с MS Access, FoxPro, Oracle Forms и FileMaker.

Посетите http://www.kexi-project.org/about.html для получения подробной информации.




3

Во многом в соответствии с ответом Аурелио теперь я работаю в Ruby on Rails над некоторыми приложениями, которые я мог раньше делать в MS Access. Внутренняя база данных для приложения Rails. обычно MySql (работает достаточно хорошо и доступен на большинстве общих веб-хостингов) или PostgreSQL (лучший выбор, когда это возможно).


Рад тебя видеть, Стив! Не слышал уже много лет, и надеюсь, у вас все хорошо ... Я хотел бы услышать больше о вашем опыте использования Ruby on Rails. Я посмотрел на него, и он выглядит как слишком серьезное обязательство для слишком громоздкого проекта (с моей точки зрения, он выглядит как большая библиотека и, таким образом, обеспечивает свою собственную логику - не буквально, а метафорически).
Дэвид-В-Фентон

Успех - дело относительное - я скоро расскажу об этом по другим каналам. Лично я люблю Rails уже много лет, но я бы никогда не стал утверждать, что он подходит всем. Это является большим обязательством, но язык Рубина является очень мощным и выразительным, и радость , чтобы узнать, ИМО. Rails - это «самоуверенный» фреймворк, включающий в себя большой набор библиотек по умолчанию, однако многие библиотеки являются необязательными и заменяемыми, поэтому он менее строг, чем может показаться на первый взгляд. Сообщество Rails также действительно велико, что, очевидно, имеет большое значение.
Стив Йоргенсен


2

У меня такая же проблема с тобой. У меня было приложение доступа к MS, но я хотел перейти к веб-приложению, доступному для всех и не платя MS денег. Итак, я решил использовать MySql и Wavemaker (с открытым исходным кодом), чтобы получить объем ... Я очень рад этому решению. и вот результат http://www.mara-database.org/


Я не думаю, что вы отвечаете на заданный вопрос.
Дэвид-В-Фентон,


2

Кажется, вы ищете не просто программу базы данных, а базу данных с формами, отчетами и т. Д. (В основном своего рода IDE). Я бы рекомендовал попробовать OpenOffice.org Base, который поставляется с офисным пакетом. Это бесплатно и с открытым исходным кодом. Он далеко не так совершенен, как доступ, но делает примерно то же самое.

Кроме того, если вы знаете доступ, он будет хоть немного знаком.

http://www.openoffice.org/

РЕДАКТИРОВАТЬ: К сожалению, не удалось прочитать, что вы рассматриваете OpenOffice.org. Что касается стабильности, у меня случался сбой, и я делал некоторые "странные" вещи, когда играл с ним, но Access сделал то же самое. Лучший способ узнать это - немного поиграть с ним и посмотреть, подходит ли он вам.


1

Я думаю, что в базе данных, включенной в OpenOffice.org, есть конструктор форм. Хотя я никогда не пробовал писать для него код. В сообщении на форуме, которое я видел, была ссылка на учебник, в котором, по их словам, был какой-то код.

Я начал настраивать базу данных для своей жены, и, насколько я мог судить, интерфейс выходил довольно неплохо.

oooForum.org учебник


2
Я бы хотел использовать вещи, включенные в OO.0, но в последний раз, когда я их проверял, они были слишком примитивными для использования.
Онорио Катеначчи,

0

для sqlite проверьте расширение firefox. Он предлагает удобный графический интерфейс.


Разве это не позволит вам управлять базой данных, а не создать «легкое настольное приложение»?
JeffO

Верно, но я думаю, что спрашивающий просил базу данных, а не легкое настольное приложение. MSAccess довольно хорош в этом, его сложнее заменить.
Кристофер Махан,

@Christopher Mahan: точно ли вы уловили идею из неоднократных утверждений первоначального спрашивающего, который он спрашивает обо всем пакете (особенно о разработке интерфейса), что он «запрашивал базу данных, а не легкое настольное приложение»? Вопрос совершенно ясен: это весь пакет, поэтому любой ответ, касающийся только базы данных, совершенно неверен для вопроса.
Дэвид-В-Фентон,

@ Дэвид: Ты, конечно, прав. Я создал много-много баз данных с доступом. Это была моя постоянная работа в 1997–1999 годах. Я помню, как создавал функцию модуля для автоматического повторного связывания таблиц на основе сетевого окружения.
Кристофер Махан,

-1

VistaDB - единственная альтернатива, если вы собираетесь запускать свой сайт на виртуальном хостинге (почти все они не позволяют запускать ваши сайты в режиме полного доверия), а также если вам нужен простой веб-сайт с возможностью развертывания x-copy.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.