A Database for the Office?
travellerjohn asks: "I work in a small company (200 people in 7 offices), where the staff uses Microsoft Access to create various databases. Most of the time they lose interest before the databases become complex or important enough to warrant the IT department getting involved. However, from time to time, someone turns up at our door looking for help with their pet project, often starting with statements like 'it should work over the intranet' or questions like 'why can't it store documents and pictures?' or 'how do I control user access?' When we sit them down and explain how much it will cost to rewrite their database in PHP/VB/JSP, or whatever we sound unhelpful and expensive. What database tool does Slashdot recommend I provide our staff? It has got to be easy to use, web enabled, capable of storing documents and pictures and offer user level security. We have tried Sharepoint with some success but that is pretty limited, too, and I have looked at Oracle Application Express. Open source would be good, but I would pay for the right product. Any suggestions?"
Access cannot store pictures or documents. However, you could use its hyperlink field type to link to other office documents, though that's stopgap at best. The Office hyperlinking system is kinda ugly.
Other than that, Access supports everything you just mentioned out of the box. User access, publishing, replication...you can even whip up a small Wscript/VBscript to pull down user names and security rights from Active Directory via LDAP.
Really, it's not as bad as you think - the only major problem is storing images.
ACs are modded -6. I don't read you, I don't mod you, I don't see you. Don't like it? Don't be a coward.
servoy comes to mind (not something I particularly liked however)...
It seems like the work flow (what's the right term here) is out of whack there. Database projects that "lose interest before they become complex or important enough to warrant the IT department getting involved"? It reminds me of the commercial where they discover they don't have any computer problems so they can refocus on the real purpose of the company.
"It has got to be easy to use, web enabled, capable of storing documents and pictures and offer user level security."
Is it hard to set up an office webserver with some sort of content management that everyone can use?
A relational db is one thing, a document collaboration tool is another. If it is a MS Office environment, get someone who knows Sharepoint to come out and show you and one of your power users what it can do. You can even buy/build modular web parts if your document needs are out of the ordinary.
You'll need MSSQL on the backend, so that solves your "bigger than Access" problem right there. These tools dominate their markets for a reason.
FileMaker seems to be the easiest for non-techies to grasp, and supports image storage, publishing to web servers, and other goodies they want. Also hooks to SQL if you need more horsepower on the backend.
Never thought I would say this, but if documents, images, and security for a web site are your main consern: Lotus Notes.
Easy to use with a little bit of training, and works wonders with documents (suppost to be better at it than sharepoint)
Bad User. No biscuit!
I think what you want is a CMS system like Metadot, not a database. If users are looking for an easy way to share images and documents, a database really isn't the best solution. Hell, a shared network drive would be better than a DB.
I've used FileMaker quite successfully for many years. It is simple enough for most folk, but extensible. It can store pictures and other binary data. The web interface can be customized. User level access control is built-in. It runs under Windows and Mac and in Wine under Linux. Databases can be migrated to a FileMaker Server, if they go beyond the standalone limits (10 simultaneous users, typically). There's also a compiler to create standalone applications from databases, without needing a license per user.
All in all, FileMaker is a great tool for this sort of thing.
-- Dan Jenkins, Rastech Inc.
Filemaker's desktop and server products should cover most of your bases.
"Most of the time they loose interest" As opposed to "tight interest"?
Why not try Groove? It's owned by Microsoft, and likely to show up in future versions of the OS. It's fairly easy to use, and you can store whatever you like securely.
In a 200 person company, I would get rid of Access on the desktop. I see the appeal, but it's time for the IT department to step up and consolidate database development/maintenance so that it is more centralized.
Once IT takes control of all databases, all sorts of things fall into place, such as security, backups, moving to a single technology (SQL Server or MySQL), etc. At first it is a bit more costly and people will complain about losing flexibility. But in the lgng run, it is cheaper and people who do OTHER work will find it nicer to be able to focus on their core expertise.
"If you want to improve, be content to be thought foolish and stupid." - Epictetus
100% wrong on all counts!
.NET 2.0, SQL Server extensively, and looking forward to Vista - imagine that!) It has a easy mechanism to build "GUIs", but that's about it. The underlying DB itself is crap (and that's borderline insulting crap)
Access CAN store anything as blobs.
As for supporting the rest, you're wrong there too.
-Access security model is a total JOKE - and a bad one at that. No normal RDBMS security, just some shitty broken built-in sorry excuse for security (and shitty cmd line tool to recover it).
-It *doesn't* scale. At all. This is thoroughly documented (you'd know if you had even read a FAQ or something). It wasn't EVER meant to be used for more than a handful of users (MS KB even state this). Put a few concurrent users and see for yourself. You'll be wishing for abysmal performance, as that'd be already a huge improvement (the underlying jet/dao-era tech sucks hard)
-access DBs are really inefficient - they use up FAR too much network bandwidth (making it slow for everyone else), are slow, and aren't even reliable over network links - expect your files to become corrupted every now and then.
-it doesn't use vbscript, but rather VBA. Another sucky poor excuse for an outdated sucky scriting language. Heck, even 10 years ago (well, with Office 97) it sucked. Bad enough that you'd even wish for PHP instead (and that's saying a lot). And VSTO is too complicated for simple things. Because you manage to script stuff in a spaghetti manner using world's poorest scripting language doesn't mean Access has the features in the first place.
Access is the single and ONLY worst DB than MySQL (It's bad enough that I could make a 600 page rant about it -it's by FAR MS' worst product - heck, I'd rather admit I use MS Bob and love the office paperclip thing and search assistant dog!). And that's coming from what most ppl here would call a "Microsoft Shill" and fanboy (C# coder, using
He'd be better off with a *REAL* RDBMS, be it MSSQL, Oracle, DB2, PostgreSQL, Firebird, and even MySQL (don't like it much, but *anything* is a step up from Access, in terms of security, scalability, performance, availability, features, etc).
What he's looking for isn't so much a database itself anyways. It's something to create "GUIs" with it. Things like ASPMaker/PHPMaker/whatever from http://hkvstore.com/ or such that'll easily and quickly create a simple web front end for the various DBs. If more time/budget permits, then yes by all means use code generation & ORM tools to create a quality, well made app instead (the generated ones aren't exactly the best, but it takes minutes to create the thing, and it's almost free)
Now, y'all go ahead and mod me -1, Flamebait because you know it's true.
Why not use something like TWiki? It can store those things plus it has decent enough access control. We've moved almost our entire business unit (around 600 users) web content and migrated a lot of processes to one centralized TWiki installation running on a Solaris box and couldn't be happier.
... BAN Access. One day the database "created just for a simple task" may become the repository of mission critical business data. Access is inappropriate and incompetent to the task of being a "database" in any meaningful sense of the word.
Training is critical; ensure staff recieve spreadsheet (excel or your chosen open source brew) training in reasonable depth... Then encourage them to use spreadsheets for "simple tasks" involving data storeage. Making some "standard" macros for query dialogs is useful here. Then if the data does become important, it is a trivial task to move it into a real database (unlike access!).
One solution I have seen effectively used is the creation of a "general" database using mysql and a rather clever PHP front end. The database allowed for 8 "fields"; each field was really three fields, Data descriptor, Data name and Data type. Essentially the ID-10-T entered a name for the data field, its data and selected a type from a drop down box. They could select previous "name and type" combinations they had used. This then spawns a copy of this "standard" database with user access privelges set to a default rule; another interface allowed advanced users to adjust this. Finally a generic PHP gateway presented them a data entry/query sheet that formatted itself based on type... Sure, it was probably alot of work, once; but it ensured that all future databases created were in "real" databases that were relatively easy to maintain for the IT department.
Essentially, my suggestion is to encourage them to work with excel or similar with a few standard macros/dialogs created to allow data entry and search to be "simple" (small up front work by IT, maintenance required); or create a more complex "standardised" database and access system (alot of up front effort, minimal maintenance). This trades effort for ease of future scaleability and maintenance.
Just my $0.02
err!
jak
You could always set up a MySQL server with PHPMyAdmin and have them learn SQL.... :-P).
On a more serious note, you might just consider rolling your own application. Set up a MySQL (or Oracle, or MS SQL, whatever you like) database, then roll your own application that will meet the needs of the various departments. Keep tally of the features that people are asking for on their specific projects, and include the most common ones. Once everything is finished, then just allow departments to port the database over themselves (you could write an app to import access databases if you want- though users should be punished at least a little bit for using Access
Famous Last Words: "hmm...wikipedia says it's edible"
I've been kicking around building an OSS database utility to compete with the likes of Access and Toad. It would be based on PHP, SqLite, and ODBC. However, I cannot find a decent open-source JavaScript editable data-grid control. They tend to have one big flaw or another. Maybe in another year such will finally mature. Data-grids are a must for such a util.
Table-ized A.I.
It seems as though you're looking for some type of development platform, not necessarily a database. Fact is, that's why a lot of people use Access for small stuff. It essentially allows them to quickly develop an "application" (from the user's viewpoint). Yeah, there's good and bad to that.
This seems to be more of a policy/management issue than a technology issue. If people even think for a moment that what they want may one day be used over the net or by more than one or two people, they should be contacting IT first to see what can be done. Otherwise, they're on their own. It's either that or be prepared to train a lot of people on how to properly design databases.....which most users are not going to be interested in.
-- Fugacity: Confusing chemists since 1908
See my collection of Perl libraries for just such an occasion:
http://entropy.homelinux.org/axis_not_evil
For 200 users, with user-level security, you just need to find a tech willing to actually spend the time to make Access work. 2007 has plenty of additional gizmos, incluing a new "attachment" data type to, well, store those documetns you can't really store in Access.
(You can store Images in Access. You use the "image" file type.)
Now, if you just want to upgrade their database, the SINGLE CHEAPEST thing you can do is setup SQL Server 2005 Express. Access can upgrade itself to use the server (Use the "SQL Database Engine" if you're version-shy), and you gain all of those things that you don't have now.
Pick whatever database backend you like; big, centrally managed, scalable, as complex as you like. IT manages it; handles the schema and maintenance, necessary stored procedures. A professional data architect in the IT department has final say on the architecture, but works with the requesting parties to ensure that it can fill their data needs. If necessary, views or similar can be constructed and made available on top of the actual data structure to make it easier for the non-programmers to interact with. You then expose, with appropriately restricted permissions, the database server to all these people with their small pet database projects. You know that most of them are going to be looking at most of the same basic table structure--they need names, phone numbers, whatever. It's a decent bet, since they're in the same company, that they're actually going to be storing the same data, no less. Let them at it--give 'em ODBC connections and turn 'em loose.
They do the work; you give some input and assistance, but don't turn any of them into full-blown development projects. All you have to do is manage the backend. They get to scratch their itch, you get to look helpful and enabling, and no one gets sucked into big, expensive tools or projects.
No relation to Happy Monkey
Your solution is right under your nose and it's called SharePoint. Not only does it have the functionality to store data in all kinds of structured form (since it has a SQL backend), it also has the ability to search inside MS Office and PDF documents.
But don't feel bad - our company did the same thing that you're company probably did when it rolled out SharePoint - we didn't assign admins or permissions correctly, train people, or provide design guidance which caused the project to be a failure.
So we bought Portal Server 2003, and rebuilt the server - but with a clear designed path of what we wanted and what we would offer as a service to the employees. Then we spent the time to customize the Portal with FrontPage and spent a considerable amount of time developing and searching for webparts to enhance user experience.
Another issue we had was we had was training users to use the product to its full potential and getting management to sign their departments up to convert the way they store documents and data. Once they signed up we could assign members in their org to manage the SharePoint sites.
Needless to say the key factor to the whole project being a success was not the training or employees but ensuring that the CEO and other executives in the company that could mandate such a change were behind the project.
Without their approval to co-sign the project, it could have failed like so many others good ideas that never get a chance after employees kick it to the curb.
There's no point fighting with Access to try to make it do something it wasn't designed to do, namely large-scale multiuser access to a big database. What you want is an easy-to-use RAD tool with the fastest native database in existence, namely Visual FoxPro 9. It will handle hundreds of users accessing GB's of data with no problem at all. Yes, that's right, FoxPro, and despite VB people saying since 1994 that Fox is dead, the next version will be out soon and it's supported until 2015. Unlike VB6. Also, it's number 12 on the Tiobe list of most popular languages - http://www.tiobe.com/tpci.htm/ Here's some more reasons why: http://fox.wikis.com/wc.dll?Wiki~VisualFoxProBulle tPoints/
http://www.glom.org/wiki/index.php?title=Main_Pag
From the front page...
El Tonerino
Computer Associates open sourced their Ingres RDBMS a couple of years ago. It runs on NT and Linux and Solaris and other platforms. You can access it via ODBC, JDBC, ADO, and natively.
It's very good from an administration point of view - certainly requires less support than Oracle. It's acquisition by CA was to use as a low maintenance RDBMS for embeddeding in systems (eg Unicentre), and can be downloaded from the CA web site.
You can also purchase commercial support from Computer Associates.
I haven't used it, but there's bunch of new stuff in Access 2007 that might be of interest, including an attachment datatype (documents, images, etc...), improved SharePoint integration (access control, workflow, offline lists). of course, you can pass through to a DBMS if Jet become a limiting factor...
Centralized DB in even the MySQL style is serious overkill and overcomplication, for casual or local very-denormalized data listings such as constitute a the majority of small-business databases. Access would be good if it were cheap and you could trust it. Excel is a common ugly hack.
Perhaps there's some GUI tool based on SQLite?
and - for instance - Plone, too: It ;-)
- runs on almost everything (Windows, Mac OSX, Linux, *BSD - from Servers to Laptops),
- is very easy to set up and maintain, - has an easy-to-understand web-based user interface,
- has a simple but powerful user management
- can store data in almost any SQL database, but
- comes with its own, very powerful object-oriented DB (ZODB).
Especially the last point makes it appear "naturally" to many users: They can store data as they are used to do in their filesystem inside folders, documents etc. There is a LOT of additional, easy-to-use plug-ins (called "products") that allow, for instance, to put files onto the filesystem through-the-web -- and: all is very easily scriptable with Python.
So: Welcome to the Zope/Plone Community
Sounds like you need a content management system, not just a database. Your users basically seem to wish for a way to share project-related materials. I see you've already considered that...
...so I'd definitely be interested to hear what limitations you ran into there. It's highly possible that some of the open CMS systems (Drupal, etc) could offer you what Sharepoint doesn't, but it's hard to say without knowing exactly what parts of Sharepoint you found limiting for your needs.
You might also consider a hosted collaboration tool such as Basecamp. I haven't used it myself but it has quite a few fans. It's probably more limited (and certainly less extensible) than software like Drupal but the ease of administration (since it's hosted) and easy accessibility (since it's not on your LAN, it's on the 'net) could compensate. Then again, if you're the IT guy... perhaps you don't want a zero-administation solution for job security's sake. :)
OtakuBooty.com: Smart, funny, sexy nerds.
Take a look at Alphora Dataphor. While it is not an end-user tool, it has the potential to lower your development costs so much you will be able to actually serve your users.
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
Any type of data, trivial to develop web based applications which access an SQL backend, or which don't. Scales easily to hundreds of users, has a very powerful built in security and authentication system.
Deleted
http://www.quickbase.com/ ... web-based, hosted by intuit, multi-user, permissions, file attachments, easy gui tools for editing the db, customizable interface, http, java, perl, vb, ruby apis, xml in/out.
- new-look-in-web-databases.html
there are also a few others: http://www.dabbledb.com/ http://www.eunifydb.net/
http://oakleafblog.blogspot.com/2006/03/dabble-db
The correct question should have been: How can we empower our users to get the functionality they want without going into the deep end of IT development?
The answer is to get them an "office geek". Hire one young fresh out of college tech geek. Her/His job is to go around the office and find these small projects, improve them into slightly better tech but still keep them small simple projects. He/She should know the basic tech that the users need, whether it be web, DB or media. He/She should be able to put together the appropriate basic tech behind it, shooting for open source or small product packages first but moving up to big products like Oracle only if necessary. IT will work with person only so far as to guide him/her to IT resources that might help, assist or supplant his plans and give helpfull hints if he gets lost due to inexperiance. If he does really well, IT can adopt his work into the IT work flow.
It may sound a little expensive to hire such a geek. But over the long run I bet it is very effective in making the rest of the staff more productive. They cut their inexperineced development time a lot and get back to what they should be doing. Productivity up for everyone else, and better data handeling to go with it.
It's like having an "Ask Slashdot" right there on staff, but one who can do more than just answer questions.
There is nothing so silly as other peoples traditions, and nothing so sacred as our own.
Migrating from Access to SQL would be logical for you. Clients keep using Access and its forms to access the data, so they keep the application that they developed, and you get managebility, proper multi-user and access permissions.
It will be almost transparent for users.
check it out at http://www.activegrid.com/. We use this to rapidly generate precisely the types of applications you talk about. This does it so quickly , we were able to clear our backlog and get to 'real' work ;)
1. SQL Server Express - http://msdn.microsoft.com/vstudio/express/sql/down load/
2. MS Visual Web Developer Express - http://msdn.microsoft.com/vstudio/express/vwd/down load/default.aspx
3. SQL Server Management Studio Express - http://msdn.microsoft.com/vstudio/express/sql/down load/
4. Use either C# or VB
5. ???
6. Profit!
It provides a simple and quick solution. It may be what you're looking for, or it might not.
to stop doing things half assed. If they want their businesses to grow then need to invest in good people and good software. So instead of having your secretary write a database in Access, why don't they spend a little bit of money and develop a good database/application.
Cyberbite Networks - Web Hosting, Dedicated Servers & Colocati
How about Dot Net Nuke (http://www.dotnetnuke.com) running a MS SQL 2005 Express database? DNN is open source and free, and SQL Express is pretty cheap. I'm not a huge proponent of MS stuff, but DNN started as an MS project then splintered off and is wonderful. I use it all the time. Since you have access to the source sode, you could just buy a copy of VB.NET and write some new functionality anytime you wanted.
There is a strong bias here on Slashdot against anything Microsoft-centric. I am telling you that in the case of Access it is an unfounded bias. The system works, and it works well. It does scale, but it does not scale to thousands upon thousands of users. If you need to scale to that level later, there is SQL Server...and virtually all of the systems you build in Access will scale up to that level. The upgrade process is easy. But you have 200 users...and from what you describe the databases they use are probably only being used by small percentages of that. Access will work, and it will work well.
Don't let the disdain of suspender-wearing command-line users wear you down. These guys just want to keep anyone from using a Microsoft product, even if it is a good one. It's okay to use a GUI environment such as Access for the needs you describe. You just need someone with a knack for Visual Basic, and that can be just about anyone with a good knowledge of how to write clean code.
I don't know if this is a "which db + scripting language is better" request or "is there an access front end like tool thing for something that isn't access" question. Unless you are having serious data/production/security loss/issues, I think you should stick with what your people know.
l
My favorite == MySQL + ruby.
Here is a class for php that "displays results of sql statements in a browseable and editable format akin to excel or Access". http://www.phpclasses.org/browse/package/1547.htm
Here is a cross platform IDE if your wanting to teach people to use php instead of vb. http://tulip.solis.coop.br/us/index.php
Having to work for a living is the root of all evil.
I am DEFINITELY not a Windows person, but I seem to recall setting up an ODBC connector to let Access (or some other common Windows app) see into our PostgreSQL database. Other than setting up the connection the change was entirely transparent to the user.
Is that the case? If so, would this solve your immediate problem since the users could continue to use Access for smaller projects that don't warrant a full web-based solution? At least the data will be centralized and routinely backed up.
For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
Create mySQL databases and teach them how to use Excel and Access as the front end.
If you aren't part of the solution, there is good money to be made prolonging the problem
Rekall
and
Bond (building object network databases) are two products that might interest you.
Alpha V5 is not open source, but it can certainly compete with filemaker in terms of scalability since version 7(it can use, among other things, mysql directly)
However, why doesn't the poster just start over, covering exactly what database/application needs are there, and start from there. Very few business environment develop continuously(except software developers/service providers), and those have people whose job it is to do so, as well as the correct support personnel(analysts, database, architecture, etc...).
The LAMP(I include perl/python/ruby in the "P") and LAPP(postgres) seems particularly suitable in most environments where casual developing occurs, as the "time to first hello world" can be quite short, and developing for the web, despite its drawbacks, offers flexibility rarely matched elsewhere, partly due to design client/server from the start.
this kind of thing is the sweet spot for Filemaker. up to 250 seats plus unlimited web clients. they have changed the server and the licensing recently and the whole product family has been scaled up.
An aside -- but whats your problem with mysql?
/.-like sites or addressbooks (non-critical data that is not heavily updated).
.mdb file full of tables). I think that even Microsoft themselves (at least a lot of them), given the choice, would kill the scourge that is MS Access. Given the backlash they took over their treatment of VB6 however, I think that MS fears they'd be the victim of a severe lynching by "professional MS Office developers".
MySQL is a fine product when used in a manner that fits its original purpose, but it is a poor choice for an enterprise-class database (with 200 employees and multiple sites, the article poster is moving beyond "departmental" and into the realm of "enterprise"). As another poster commented, MySQL's heritage is "ISAM on 'roids". It is easy to set up and use, has a small footprint and is fast at retrieving data. That's what makes it great to set up blogs ore
Those benefits come at a cost. Sompared to PostgreSQL (arguably the #2 Free database) it has historically lacked a lot of standard SQL support (especially in terms of enforcing referential integrity, stored procedures, transactional support...) and MySQL also takes shortcuts with data validation that make DB admins cringe (MySQL has been notorious for silently failing on things like overflowed numbers and invalid dates--writing records with garbled data instead of rolling back and throwing an exception. Furthermore, its data store is prone to total corruption should you unexpectedly lose power to the server or otherwise terminate MySQL abnormally (it was almost guaranteed if the data was on a non-journalling filesystem like EXT2).
To be fair, those shortcomings are the reason for MySQL's strengths, and there has been a lot of work done to improve MySQL's robustness (if you have even the slightest concern for your MySQL data you'll use InnoDB for example, and there is transactional support now and so on), however PostgreSQL is the most mature and robust enterprise database at the moment (Firefird is apparently a good choice too, though it has a much shorter history as a Free DBMS than PgSQL and hasn't got the same momentum either--at least not yet).
In any case, Microsoft Access is certainly the absolute WORST choice for a database application--especially for a backend, and MySQL is orders of magnitude better in stability and performance (it is apallingly easy to corrupt an
There are tons of Free PostgreSQL and MySQL-based solutions out there that can be used to wean an organisation off of Access--everything from PGAdmin and OpenOffice and GNOME Office desktop interface tools to Ruby on Rails to a multitude of LAMP-based CMS options. Also, if the article's author really must stay with a Microsoft solution but requires a cost-sensitive option I'd suggest looking at the free (though not Free) "Express editions" of Visual Studio and MSSQL 2005. Of they tried Sharepoint then they have a server they can deploy this on anyways. I think MSSQL Express even has some Reporting Services capability though it probably doesn't come with the nice Report Builder. It almost seems Microsoft is deliberatly crafting a solution that directly competes with MS Access and does everything better. And from reports I see out of TechEd they are doing a lot to make MS Access, as a distinct product, obsolete.
Anyways, those are much more robust ways to get binary data storage, web-enabled interface/intranet access and security that isn't a complete joke.
Even though a poster here suggested Access apps can be used over the interanet, store binary/images using OLE and have user security, it is like using a high-heeled shoe as a hammer and a butterknife as a screwdriver. It's largely a metter of using the proper tools for the job.
Setup a copy of an Access ADP file on a everyone's machine. Have the ADP file point at a database on your SQL Server and your golden. To them they just using an Access database minus many of the limitations in Access.
If security is an issue, then make a custom ADP for each user with thier own user ID's.
You say things that offend me and I can deal with it. Can you?
Access can work, the issue is whether or not you have a good database designer. Speaking from experience as someone who is a good database designer, you need someone who knows about normalizing, relationships, splitting and linking Access apps, rules of good front-end design, etc. Access is an excellent database, but it can be abused so horribly, such as buttons that look like fields and fields that are buttons.
.9's on it) can't do proper database design. I'd yank it until they demonstrate a need for Access and have attended training on it, that would reduce, but not eliminate, your nightmares.
Your company is large enough for a full-time database guy and a copy of SQL Server. Access can make a fine front-end for SQL and it can save you a lot of development time.
One very important thing to do when you have multiple people hitting the same Access DB is to split it: have an MDB that has only tables (and relationships, indexes, etc. The front-end app has no tables, just links to the second. Access handles resource management much better in such a configuration.
But there is no silver bullet. Database design is a skill and art, and Access should not be deployed across a business because you'll just run into the nightmare that you're experiencing. 99% of users out there (well, slap a few
When you sympathize with stupidity, you start thinking like an idiot.
Depending on how robust the database has to be Access can work in some small applications. Several of them are at work in my office. We use ole objects to link to files saved on the network but do not actually store them on the database this adresses some concerns with file size. Realy I would try to sell the company better on the solutions you are currently offering a real dev project for your specific applications, maybe if you could get into more details on return on investment they would be more open to what you present to them.
This looks like great software; I am definitely trying it out. Thought it looks like it could put half my techie friends out of work :)
Greenstone is a project out of New Zealand, that runs on Linux and Windoze. I am not too sure about the photos, but it runs the Lucene engine for the search. Also, TSEP (The Search Engine Project) provides a very decent search capability. With each of these projects, you could set the indexer nightly (for example) or as often as you prefer.
Nobody's mentioned the Access Project so I'll talk it up. An Access project (.adp file instead of a .mdb) has most of the features of MS Access (read: quick development), but requires a MS SQL backend. It exposes to the client all the server Procedures and Triggers (and Views) you write. You can even write and save them from within Access. This is a very powerful feature because it allows you to centralize the code on the server and stay away from crappy VB on the client. It's strictly client-server development (no objects or MVC here) but extremely fast for development.
Your project may be absolutely brilliant, but don't go out of your way to antagonize your potential customers even if your friends also think it's funny.
Dewey, what part of this looks like authorities should be involved?
Ive used postgres ODBC with Access ( just expremental, we have real MicroSoft SQL licenses ) and it seemed to do fine.
Using the native jet database is bad anyway, as you mentioned.
---- Booth was a patriot ----
The problem with your idea is that it does NOT address the GUI part of the equation.
Having a centralized databases is fine and dandy, but if your users cant get to the data, so what? Access lets the common man get to his data without needing a IT department to come hold their hand all the time.
Sure, keep the data stored away safe, but don't take the tools away from your users too.
---- Booth was a patriot ----
Its not 'VB people' that have claimed its a dead end product. *microsoft* has stated its a dead product and will *never* be updated. The are to release a extension of some sort in a year or two to help it play better with NET, but its a dead end product.
If you know VFP, then fine, but don't waste resources learning it... Choose something that has a future.
It was great in its day, but MS has moved on to push other products, and left it behind.
---- Booth was a patriot ----
If trained properly the same secretary can create a good enough Access GUI/SQL backend to do the job, without having to spend tons of mony on an IT person to do it for them then dissapear just when they need help, costing them more money.
---- Booth was a patriot ----
test post
If your people already know Access, then you're already half way there.
Setup an MS SQL Server 2005 server, and give a DB to anyone developing one of these apps.
They can use Access in ADP (Access Data Project) mode, which is basically just the Access front end, and an MS SQL optimized back-end.
That way, all the easy to use & develop forms, queries, and reports are still there, but IT controls the DBs, and so can do backups, data integrity, assurance, etc.
It's really quite a good solution, that we've used in our organization, if your people are comfortable and productive with Access.
The other upside is that if it ever does need to be made a production app, since the DB is already on a real db server, and you know the data is in good shape with good table structures (since IT helped), its not too bad to slap a VB or ASP.NET front end on it.
It's a easy upgrade to MS SQL Server from access.
The whole concepts of documents, views, folders and forms make total sense once you get your head around it. Also, for a business person, they are so much easier to get than relational data.
It also has simple actions for most business type stuff and it is dead easy to create a new database from a template.
A good IT department can provide the users a selection of templates to base their ideas on. If you let the business users prototype some solutions, you will probably be able to help them take it to the next level and really solve their problems.
Have you tried ALfresco yet?
http://apoorv.info/
It's VERY easy to build database-centric web apps using Oracle's Application Express (formerly known as HTML DB). It's almost as simple as MS Access. And as long as you don't hit the 4GB limit, you can stick with Oracle Express and not pay a dime.
Of course, they get you once you hit that limit and it isn't so easy to port your app...
But that wouldn't be /. way.
I suggest you look into HTML DB, http://www.oracle.com/technology/obe/obe10gdb_vmwa re/develop/htmldb/htmldb.htm
It's exactly what you are asking for. It has a nice easy to develop front end thing with an Oracle backend. I worked with its earlier versions and you could spawn web based apps from tables in a snap.
If you decide to go the wiki route, take a look at this page about wiki adoption at work:
Getting Your Wiki Adopted.
- http://www.braveterry.com/
http://kexi-project.org/
"Kexi is considered as a long awaited Open Source competitor for Microsoft Access, FileMaker and Oracle Forms. Its development is motivated by the lack of Rapid Application Development (RAD) tools for database systems that are sufficiently powerful, inexpensive, open standards driven and portable across many operating systems and hardware platforms."
I'm interested in something like this as well, let me know what's missing. I'm not following you on the editable data-grid control.
robione_gmail_com
-- Robi
Why not use OO.o Base instead?
Or even 4th Dimension? 4D. Does anyone still use 4D? Anyone want a job doing 4D work?
let me know
-- Robi