Re: For Windows platform: which Dia plugin or App to simplify design and documentation of small Database Applications ?

2012-10-28 Thread Edzo A. Botjes
Hi All,

I have not followed this thread with great detail,
but for the question open-source light weigh database incl interface
Try sqlite (http://www.sqlite.org)
via a firefox plugin you can create and manage the database:
https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/
if the plugin does not work for you, here is the sqllite list they created
themselfs: http://www.sqlite.org/cvstrac/wiki?p=ManagementTools

I used this for a few small projects, and works perfectly for that.

Regards
Edzo


> On Sun, Oct 28, 2012 at 4:53 AM, Paul Smith wrote:
>
>> @Michael Ross
>> Thanks for your help.  My initial post on 23/10 said I had selected
>> HSQLDB as the target RDBMS.  In response to my question "*I am looking
>> for a tool to simplify design and documentation of small*
>> *> Database Applications, ideally starting creation of the ER Diagram,
>> from*
>> *> which the SQL DDL is generated to create the tables in the target
>> RDBMS*."
>> Andre replied: What about MySQL Workbench?
>> Until then I assumed from the name it supported MySQL only, but then
>> looked up MySQL WB in Wikipedia and read that from ver 5.2.41 released only
>> 3 months ago, it supported a few other RDBMS, and 'any ODBC compliant db',
>> Delving further, I read its minimum hardware requirement stated as more
>> powerful than my Nettop, and a review dated 2009 run on a laptop with
>> 2.5GHz CPU said WB was 'dog slow but best there is'. (a comment said its
>> fast on Mac, slow on PC)  Spent a while perusing the WB User Manual and saw
>> no mention of HSQLDB. That was the reason I asked if WB was worth persuing
>> further.  *If it won't run on my platform, or I am mistaken in thinking
>> WB supports ERD-to-SQL for HSQLDB, then its a red herring for me*.
>>
>> @Andre
>> As per my reply above, I don't think I am confusing a RDBMS with a "*a
>> tool to simplify design and documentation of small Database Applications*",
>> although as Michael seems to think I was asking about the MySQL RDBMS as
>> opposed to the MySQL WB you suggested I might consider, maybe the rest of
>> my post should have been clearer, or, it may be MySQL WB still does only
>> support MySQL RDBMS, hence Michael assuming I was interested in MySQL
>> RDBMS.   As stated in my last post, when looking for a (Open Source) DB
>> Engine for my (low-powered) platform, I had ruled out MySQL for the reasons
>> given.  It was some time back I searched for comparisons of Open Source
>> RDBMS engines, and seemed to remember reading somewhere MySQL also needed
>> meatier HW than I have.  You ask what type of configuration. I didn't
>> mention it as didn't think it mattered in context of 'tool to simplify
>> design...', but my project is limited to non-web standalone db on
>> single-user nettop.   Thanks for your insight on MySQL anyway. Interesting
>> your MySQL Server runs on 850MHz Athlon with 512Mb RAM. *Does it also
>> run WB ?*  As WB support for 'any ODBC compliant db' was only added 3
>> months ago - *is that why you suggested I consider WB ?*
>>
>> @Thomas Harding
>> Thanks for your input.  The Tutorial in Steffan's link gave a clear guide
>> how to get started using UML - except the links to the tutorial dia & sql
>> files are broken.  Its just that UML seems overly complex compared to the
>> far simpler Chen notation of 1:1, 1:n, m:n notation, that I found perfectly
>> sufficient in the past.  Also, my last reply asked if, rather than all
>> users having to 'reinvent the wheel', are there not predefined 'typemap'
>> files supporting all relevant features of target DB, in this case HSQLDB,
>> users can download ?
>>
>> You recommend Postgres as a better engine.  Having read articles
>> comparing the candidates, that was my first choice (I was impressed with
>> the User Manual), but I read it requires more powerful hardware than I have
>> and has good community help, so HSQLDB was 2nd choice.
>> My project is small, about 20 tables, and for the Forward Engineering,
>> need contain just small sample data, so it may not place much load on any
>> ERD design tool.
>>
>>
>> ___
>> dia-list mailing list
>> dia-list@gnome.org
>> https://mail.gnome.org/mailman/listinfo/dia-list
>> FAQ at http://live.gnome.org/Dia/Faq
>> Main page at http://live.gnome.org/Dia
>>
>>
>>
>
>
> --
> "It is amazing what you can accomplish if you do not care who gets the
> credit." - Harry S Truman
> mail: e.a.bot...@gmail.com
> - url: http://www.edzob.com
> - msn: unamatrix_of_the_b...@hotmail.com
> - skype: unamatrix
>
___
dia-list mailing list
dia-list@gnome.org
https://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://live.gnome.org/Dia/Faq
Main page at http://live.gnome.org/Dia



Re: For Windows platform: which Dia plugin or App to simplify design and documentation of small Database Applications ?

2012-10-28 Thread Thomas Harding

Le 28/10/2012 09:18, Edzo A. Botjes a écrit :

Hi All,

I have not followed this thread with great detail,
but for the question open-source light weigh database incl interface
Try sqlite (http://www.sqlite.org)
via a firefox plugin you can create and manage the database: 
https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager/
if the plugin does not work for you, here is the sqllite list they 
created themselfs: http://www.sqlite.org/cvstrac/wiki?p=ManagementTools


I used this for a few small projects, and works perfectly for that.

That's the name I forgotten while talking about "lightweight solutions" 
"libraries".


I don't know of current status, but a few years ago nor types nor 
foreign keys[1] were /on the goal/, so it was needed you to handle that 
in your appliance.


However, http://tedia2sql.tigris.org/ is a perl script (that page lists 
dependencies), and http://tedia2sql.tigris.org/usingtedia2sql.html seems 
giving a good enough tutorial to

author a convenient Dia file.

as stated here: 
http://annocpan.org/~AFF/Parse-Dia-SQL-0.23/lib/Parse/Dia/SQL.pm 

It is (the tutorial) still available for parsediasql (debian: 
libparse-dia-sql-perl).


the last can generate statements for  numerous databases, such as IBM 
DB2, Informix,
Ingres, MySQL (InnoDB, MyISAM), Oracle, Postgres, SQLite version 3 
([1]/with foreign key support/, so it could be on for both now ;), Sas, 
Sybase.


see http://search.cpan.org/dist/Parse-Dia-SQL/

I searched, have been read the tutorial, writing also this : I'm awake 
since 10.15AM,

it is 11.11AM :)

I can author a Dia sample, then test it and send both diagram and 
result. I think it will took
half an hour more (I'm puzzled by GUIs: I learned to read and write, not 
to draw)

:)

And, yes, things has changed since I used for dia2sql :)
___
dia-list mailing list
dia-list@gnome.org
https://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://live.gnome.org/Dia/Faq
Main page at http://live.gnome.org/Dia



Re: For Windows platform: which Dia plugin or App to simplify design and documentation of small Database Applications ?

2012-10-28 Thread Thomas Harding

Le 28/10/2012 11:13, Thomas Harding a écrit :



I can author a Dia sample, then test it and send both diagram and 
result. I think it will took
half an hour more (I'm puzzled by GUIs: I learned to read and write, 
not to draw)

:)

And, yes, things has changed since I used for dia2sql :) 


Done *a minimal one*.

It was not so obvious, you can double-click on tables and relation

I still get errors:
tom@salon:~$ parsediasql --db postgres --file Desktop/database.dia > 
Desktop/database.sql

[INFO] Replaced serial with integer
[INFO] components is an empty ARRAY ref

But it results correct statements.

It's a 2 tables sample (book / authors), books has ISBN, I have no idea 
of authors id, there can be same pen names and any other info is unsure: 
so it is numeric /serial :)


Sample has to be improved (mixed letters case, etc..), and isbn and 
serial are Postgres specific.


database.dia
Description: application/dia-diagram
<>-- Parse::SQL::Dia  version 0.20  
-- Documentationhttp://search.cpan.org/dist/Parse-Dia-SQL/
-- Environment  Perl 5.014002, /usr/bin/perl  
-- Architecture i486-linux-gnu-thread-multi-64int 
-- Target Database  postgres  
-- Input file   Desktop/database.dia  
-- Generated at Sun Oct 28 12:27:02 2012  
-- Typemap for postgres not found in input file   

-- get_constraints_drop 
alter table book drop constraint fk_author_id ;

-- get_permissions_drop 

-- get_view_drop

-- get_schema_drop
drop table Author;
drop table book;

-- get_smallpackage_pre_sql 

-- get_schema_create
create table Author (
   idserialnot null,
   name  varchar   ,
   surname   varchar   ,
   date_of_birth timestamp ,
   date_of_death timestamp ,
   pen_name  varchar   ,
   constraint pk_Author primary key (id)
)   ;
create table book (
   isbn  isbnnot null,
   title varchar ,
   author_id integer ,
   constraint pk_book primary key (isbn)
)   ;

-- get_view_create

-- get_permissions_create

-- get_inserts

-- get_smallpackage_post_sql

-- get_associations_create
alter table book add constraint fk_author_id 
foreign key (author_id)
references Author (id) ;
___
dia-list mailing list
dia-list@gnome.org
https://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://live.gnome.org/Dia/Faq
Main page at http://live.gnome.org/Dia



Re: For Windows platform: which Dia plugin or App to simplify design and documentation of small Database Applications ?

2012-10-28 Thread Thomas Harding

Le 28/10/2012 12:38, Thomas Harding a écrit :

Le 28/10/2012 11:13, Thomas Harding a écrit :



I can author a Dia sample, then test it and send both diagram and 
result. I think it will took
half an hour more (I'm puzzled by GUIs: I learned to read and write, 
not to draw)

:)

And, yes, things has changed since I used for dia2sql :) 


Done *a minimal one*.

[see quoted post for attachments]
Dia can helps on design/design to code, while it is not the only tool 
(especially for

Java/MS-Windows you seems to target on... there is Eclipse)

Dia will help you if you need for separate tools (one tool, one function).
dia2code is a good one (for skeleton).


About other question (which RDBMS/DB engine to use) :

It could not be the "right" question!

http://en.wikipedia.org/wiki/PostgreSQL (really powerful & extensible, 
high scalability)


http://en.wikipedia.org/wiki/HSQLDB (I'm not aware of extensibility (eg: 
new types), can have small footprint, while needs Java: are you aware of 
the 2GB limit/32bits?)


http://en.wikipedia.org/wiki/SQLite (library, really small footprint, 
but no type coercition -- eg as in Python, more likely as in Perl (you 
fix a preffered type, it can change ; while in python a variable is not 
type-ed, but while "fixed" needs ~type cast), also: don't expect 
concurrency, eg to use on a (dynamic) web server this is definitely not 
suitable)


http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

there are also numerous other database models than object-relational 
(and even for last there is not only SQL to query/define):

http://en.wikipedia.org/wiki/Database

So, the real question is: what do you want to do? how big is your data? 
do you need for foreign keys, table inheritance, ...? have you special 
types which needs a real coercition more than to be checked by triggers 
(or externally by your appliance)? is your appliance mono or multi-user? 
is your data relational (eg, see Apache CouchDB)?


In fact, to design your appliance on a schematic (UML class diagram is 
one of, especially to design underlying database, but this is not the 
only and you definitely must not forget the other UML ones!) will help 
you to decide.


Whatever you decide, the benchmarks are your matter and you'll need to 
experiment for your case with several prototypes /and/ a "fake" data set 
suiting your requirements, as possible as large as you'll fill.


My opinion is: excepting for "big data", it matters now only for 
embedded and handhelds (if it fails elsewhere, your code is definitely 
badly designed).


Note: on Linux you have memstat if you want check for memory 
consumption... I expect a graphical tool on MS-W$ also exists.


Regards,
TSFH.
___
dia-list mailing list
dia-list@gnome.org
https://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://live.gnome.org/Dia/Faq
Main page at http://live.gnome.org/Dia



Re: For Windows platform: which Dia plugin or App to simplify design and documentation of small Database Applications ?

2012-10-28 Thread Andrey Repin
Greetings, Paul Smith!

> Andre replied: What about MySQL Workbench?
> Until then I assumed from the name it supported MySQL only, but then looked
> up MySQL WB in Wikipedia and read that from ver 5.2.41 released only 3
> months ago, it supported a few other RDBMS, and 'any ODBC compliant db',
> Delving further, I read its minimum hardware requirement stated as more
> powerful than my Nettop,

Wait, you mean hardware requirements for MySQL workbench
They are exaggerated, greatly.
Not to mention, Workbench is just an administration and management tool, not a
database engine. Thus, it's harware requirements are unrelated to the
performance of the application you are developing.

>  and a review dated 2009 run on a laptop with
> 2.5GHz CPU said WB was 'dog slow but best there is'. (a comment said its
> fast on Mac, slow on PC)  Spent a while perusing the WB User Manual and saw
> no mention of HSQLDB. That was the reason I asked if WB was worth persuing
> further.  *If it won't run on my platform, or I am mistaken in thinking WB
> supports ERD-to-SQL for HSQLDB, then its a red herring for me*.

> @Andre
> As per my reply above, I don't think I am confusing a RDBMS with a "*a tool
> to simplify design and documentation of small Database Applications*",
> although as Michael seems to think I was asking about the MySQL RDBMS as
> opposed to the MySQL WB you suggested I might consider, maybe the rest of
> my post should have been clearer,

Nah, when I reread it, it was quite clear, but I was confused by the word
"hardware requirements" in relation to the management application.
Much like "Dia hardware requirements"... You can write anything here, but the
reality is that you will be able to run Dia on any platform offering necessary
Gtk+ compatibility layer.

> or, it may be MySQL WB still does only support MySQL RDBMS, hence Michael
> assuming I was interested in MySQL RDBMS.   As stated in my last post, when
> looking for a (Open Source) DB Engine for my (low-powered) platform, I had
> ruled out MySQL for the reasons given.  It was some time back I searched for
> comparisons of Open Source RDBMS engines, and seemed to remember reading
> somewhere MySQL also needed 
> meatier HW than I have.  You ask what type of configuration. I didn't
> mention it as didn't think it mattered in context of 'tool to simplify
> design...', but my project is limited to non-web standalone db on
> single-user nettop.   Thanks for your insight on MySQL anyway. Interesting
> your MySQL Server runs on 850MHz Athlon with 512Mb RAM. *Does it also run
> WB ?*

No. That's only web/db server. My development box is a single-core P4/3.0 GHz.

> As WB support for 'any ODBC compliant db' was only added 3 months
> ago - *is that why you suggested I consider WB ?*

I suggested it for the fact that it is EER tool.
I rarely use it directly with database, when I develop new DB.
I lay down tables, draw connections, and heavily think over it all, before I
write first line of code.
Something like http://hazeron.rootdir.org/files/EER%20Model.svg
The only downside coming from it's upside... It's specialized to the point,
where it loosing visibility. You can't tell from the image export, which
fields are referenced by foreign keys. It is, however, clearly visible in the
program, when you highlight the link.

> @Thomas Harding
> Thanks for your input.  The Tutorial in Steffan's link gave a clear guide
> how to get started using UML - except the links to the tutorial dia & sql
> files are broken.  Its just that UML seems overly complex compared to the
> far simpler Chen notation of 1:1, 1:n, m:n notation, that I found perfectly
> sufficient in the past.  Also, my last reply asked if, rather than all
> users having to 'reinvent the wheel', are there not predefined 'typemap'
> files supporting all relevant features of target DB, in this case HSQLDB,
> users can download ?

> You recommend Postgres as a better engine.

That's a question of preference.

> Having read articles comparing
> the candidates, that was my first choice (I was impressed with the User
> Manual), but I read it requires more powerful hardware than I have and has
> good community help, so HSQLDB was 2nd choice.
> My project is small, about 20 tables, and for the Forward Engineering, need
> contain just small sample data, so it may not place much load on any ERD
> design tool.


--
WBR,
Andrey Repin (anrdae...@freemail.ru) 29.10.2012, <01:38>

Sorry for my terrible english...

___
dia-list mailing list
dia-list@gnome.org
https://mail.gnome.org/mailman/listinfo/dia-list
FAQ at http://live.gnome.org/Dia/Faq
Main page at http://live.gnome.org/Dia