Re: Database Support - Conversion to Sqlite



Hi Chris,

I don't know much about databases, so forgive me if my remarks do not
make sense. =)


On Wed, Oct 29, 2008 at 04:22:19PM -0400, Chris Peachment wrote:
> I am using Sqlite in place of PostGresSql
> for a variety of reasons not relevant here.
> 
> Converting the version 0.14.3 database
> schema is relatively straightforward but it
> reveals a number of identifiers that might
> be reserved words in some database products
> and thus require back tick quoting or cause
> syntax errors.
> 
> Specifically:
> 
> -- day   as table name
> -- date  as field in day table
> -- start as field in task table
> -- work  as field in task table
> -- type  as field in predecessor table
> -- value as field in property table

Any backwards-compatible changes we should just do right away. I still
have a patch in the works to remove support for libgda < 3 and add
proper quoting of data. Are you saying this cannot always be solved by
quoting? Tell me more.

> In addition, the task priority field is
> supplied in the XML .planner file but is not
> in the database schema.

Can this be added in a backwards-compatible way? If so, can you provide
a patch?

> As a more general comment, I note that the
> names chosen for both tables and fields are
> often generic and at risk of name space
> collision when the Planner tables are
> integrated with other tables. Their generic
> nature might also be misleading in a bigger
> schema where other parts of the database
> has similar content.

Isn't the planner database the namespace? Why would any non-planner data
end up in the planner database?

> Since the database schema has significant
> documentation value, the use of identifiers
> with abbreviations that appear cryptic to
> non-English speaking coders might also be
> discouraged.
> 
> For these reasons, I suggest that the table
> and field names be reviewed before too much
> code is written and they are 'cast in stone'.

People have already been using Planner with a database. Isn't it cast in
stone already? I don't think it's easier to change it now than it is to
do it later, is it?

We've talked about changing the .planner file format on this list in
http://mail.gnome.org/archives/planner-dev-list/2008-March/msg00004.html
and I also talked about it at the end of 
http://mail.gnome.org/archives/planner-dev-list/2008-February/msg00014.html.
The same thing holds for the database format: we want to keep the number
of times we change it to a minimum. We can do this by documenting
somewhere what should be changed in the database format and only
implement it when the format is changed for the other things.

> How can I help in this matter?

You undoubtedly know more about databases than I do. I would love to see
what you think needs to be changed and why. It would be even better if
other people who know databases could review the proposal.

Thanks,
Maurice.

-- 
Maurice van der Pot

Gentoo Linux Developer   griffon26 gentoo org    http://www.gentoo.org
Gnome Planner Developer  griffon26 kfk4ever com  http://live.gnome.org/Planner

Attachment: pgp3idSBdLTbX.pgp
Description: PGP signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]