On 02/07/2012 05:20 PM, e-letter wrote:
On 07/02/2012, Jay Lozier<jslozier@gmail.com> wrote:
IMHO, the real problem is that good data modeling is not usually taught
to users and unless they start working with databases they never learn
data modeling. Most books on using databases will, if briefly, discuss
the concepts of data modeling and database design. I do not remember any
book on a spreadsheet discussing it or even mentioning it.
Not sure if this beyond the scope of LO, but an explanation of how to
perform basic data modelling, design, planning would be very useful,
especially as a "suggested reading guide" before explaining the
features of base and calc.
AFAIK, a brief overview of data modeling is included in the Base guide
(I think it is a hands on tutorial actually). Books on Access, MySQL,
MSSQL Server, and MariaDB I have all have some information on data
modeling because a good working knowledge is very important to proper
database design.
Actually, for most people three key concepts are critical: determine
what data you have and need, break up the data into logical groups, and
design the data entry so that the data is entered only once. For your
purposes, you may have more information available than you need or in
some cases can easily generate the "data" from other data. The total
price for an invoice could be generated other data included in the
invoice, for example. Whether to include it depends on your needs and
the details you will capture. How the data should be grouped depends on
the type of data and how you need to use the data. You want table
structures that allow entry of each piece of data without requiring used
fields. On an invoice there are often multiple items but each invoice
may a different number of items. Breaking the invoice into multiple
tables; one for the basic invoice data and another for actual line items
is recommended. The idea of enter once is critical, you want to reduce
redundant data and eliminate as much data entry as possible, this makes
locating, updating much easier.
The key modeling point is take a little time before starting to think
about what you are doing and why you are doing it. You can use pen and
paper or software tools and formal procedures to aid the process. For a
simple project, could you write a few paragraphs clearly describing what
you intend to do, how you intend to do it, and outline the data you plan
to use? If, yes you have your solution outlined. The problem is that
basic concept is simple but the execution can be difficult. I know often
people will rush this step or skip it completely but it is very important.
There are massive tomes written about database design but do not lose
sight that what you are doing is thinking about the problem and its
solution before doing any detailed work on implementing it using the
tools you have available.
--
Jay Lozier
jslozier@gmail.com
--
For unsubscribe instructions e-mail to: users+help@global.libreoffice.org
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted
Context
- Re: [libreoffice-users] Re: database or spreadsheet (continued)
Re: [libreoffice-users] database or spreadsheet · Jay Lozier
Re: [libreoffice-users] database or spreadsheet · e-letter
[libreoffice-users] Re: database or spreadsheet · Andreas Säger
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.