IWETHEY v. 0.3.0 | TODO
1,095 registered users | 1 active user | 0 LpH | Statistics
Login | Create New User
IWETHEY Banner

Welcome to IWETHEY!

New Excel 97 spreadsheet to Excel database + form. Tips?
Hi,

I'm using an Excel 97 spreadsheet to store lots of data that really should be in a database. As a first step toward getting the data into a database, I've made an Excel TemplateDatabase.xls file and copied the data into it. Why Excel? Because 1) users here are familiar with it and I don't want to have to convince people to use something else, 2) I have an aversion to Access based on its reputation, 3) I don't have time to learn SQL.

The columns run from A to BD.

I've made a rudimentary Template.xlt that I want to use to add new data to the table and be able to use to view existing data.

I've run through the Data -> Template Wizard... to create a connection between the .xlt and a database.xls, but it's not at all clear to me how one makes a connection between a .xlt file and an existing database.xls (the Wizard always seems to ask for a new database. It's rather painful to run through the wizard as there are roughly 56 fields and 56 labels, and this may not be the final number of fields we need...)

Is there some tutorial or decent explanation of how to do this somewhere? Last night I ordered a couple of books ("Paul McFedries' Microsoft Office 97: Professional Reference Edition (Unleashed)," and "Running Microsoft Excel 97 by Dodge, Mark; Kinata, Chris; Stinson, Craig),") but it may be a week before they get here. The online help has been almost useless. Google searches of the web or USENET haven't turned up much useful either. I've not run through the examples - is one of them appropriate for what I'm trying to do?

This was trivial in Paradox... :-(

Thanks!

Cheers,
Scott.
New I'd export to a delimited file
To make it absolutely portable (as in you can get it into anything) export it to a delimited file. Choose the deliiters based on the type of data you have. Some datasets are easier to delimit than others. Then, depending on what you're importing into, either you've got a tool for importing a delimited file, or you can do open the file in your favorite text editor and turn every line into an insert statement. This last step would be fairly straigtforward with vi.
===
Microsoft offers them the one thing most business people will pay any price for - the ability to say "we had no choice - everyone's doing it that way." -- [link|http://z.iwethey.org/forums/render/content/show?contentid=38978|Andrew Grygus]
New Thanks, but that's not what I'm looking for...
at least based on what I know now.

The problem with our current spreadsheet approach is that there's so much data to input that we have to keep scrolling through the page, going to new tabs, etc. By making a data-entry form, it'll make the mechanics of inputting the data easier. And by having the data in a database it'll be more efficient for searching for the data of a particular type of sample, and we'll be able to construct new ways of displaying the data without changing how the data's stored (with any luck).

So I'd like to simply use Excel to do what it can obviously do. I want to construct a form for data entry, build a database from fields in an existing spreadsheet (which is easy enough to do by cut-and-paste), and have the data tied to the form so that it's simple to enter new data (and update the database), and use that same form to display previously entered data.

I don't know vi and I'm, unfortunately, pressed for time and can't learn new apps (apps that others who use the data won't be interested in using).

I'll keep searching around on this, and eagerly await the books I ordered. Thanks for your thoughts. I appreciate, and share, your concerns about portable data.

Cheers,
Scott.
New There's another issue with XL.
I might be betraying secrets, but wtf? Excel only has 64 Meg of memory addressable for Workbooks. If your workbooks grow beyond that limit, XL will crash. Excel XP doubles that to 128. I only point this out because you said you had "a lot of data". Just be aware of that, I ran into it once and it was not pretty. What happens is you get Dr. Watson errors that you can't debug. It is not 100% repro, but the more calculated cells you have, the greater the risk.

bcnu and for God's sake LEARN SQL! :-)
Mikem
New Get warp and mesa
You can have up to ~300 MB worth of data in a sheet. Its limits are so far beyond Excel that it's not even funny.

Mesa is a very good spreadsheet... if you have serious sheet needs, it's well worth looking into. Best of all, you can program it in REXX... even comes with its own libraries for more advanced functions like live feed.
--\n-------------------------------------------------------------------\n* Jack Troughton                            jake at consultron.ca *\n* [link|http://consultron.ca|http://consultron.ca]                   [link|irc://irc.ecomstation.ca|irc://irc.ecomstation.ca] *\n* Laval Qu\ufffdbec Canada                   [link|news://news.consultron.ca|news://news.consultron.ca] *\n-------------------------------------------------------------------
New REXX??? As in Tyrannosaurus? <vbg?
New Pretty much, considering
the age of the language. OTOH, that means it's got most of the bugs shaken out.\r\n\r\nHell, AFAIC, rexx is the cat's meow of scripting languages. It's sooooo easy that programming in it can hardly be called programming:)
--\r\n-------------------------------------------------------------------\r\n* Jack Troughton                            jake at consultron.ca *\r\n* [link|http://consultron.ca|http://consultron.ca]                   [link|irc://irc.ecomstation.ca|irc://irc.ecomstation.ca] *\r\n* Laval Qu\ufffdbec Canada                   [link|news://news.consultron.ca|news://news.consultron.ca] *\r\n-------------------------------------------------------------------
New REXX is the pre-perl perl
New Maybe...

But it's a lot easier than perl is... to me at least. I mean, it doesn't get a lot more natural than:

\r\n\r\n
/* Hello.cmd */\r\nsay 'Hello, world!'\r\n/* eof */
\r\n\r\n

Actually, now that it's got procedural and OO versions, I suspect rexx could be a good pedagogical language for teaching the two main programming methodologies... the fact that the OO variant is a very clean implementation of OO concepts (much cleaner than C++ or VB6) can only be considered a major plus.

--\r\n-------------------------------------------------------------------\r\n* Jack Troughton                            jake at consultron.ca *\r\n* [link|http://consultron.ca|http://consultron.ca]                   [link|irc://irc.ecomstation.ca|irc://irc.ecomstation.ca] *\r\n* Laval Qu\ufffdbec Canada                   [link|news://news.consultron.ca|news://news.consultron.ca] *\r\n-------------------------------------------------------------------
New Cheap shots :=)
C++ or VB6 vs. Rexx? Oh that's a low blow, Rexx shouldn't even be spoken of in the same breath as those two monsters. VB6 is a tyrannosaur, Rexx is a mere mosasaur. Or anklydon. Or something non-flesh eating, at least.
New How is that a lot easier?
Compare to the Perl version:

print "Hello, world\\n"

Doesn't seem to me to be any harder. (OK, I need the \\n - but if I don't want that there I don't need to remember another function.)

Seems like a pretty irrelevant difference to me.

Ben
"Career politicians are inherently untrustworthy; if it spends its life buzzing around the outhouse, it\ufffds probably a fly."
- [link|http://www.nationalinterest.org/issues/58/Mead.html|Walter Mead]
New I didn't say easier.

I said more natural. Say implies output to me a lot more than print does... there are many ways to say things... a glance can speak as well as (if not better than) the mouth can. Printing, otoh, is about paper and ink.

\r\n\r\n

It's those little touches that make it great:)

\r\n\r\n

Here, a little sales tax calculator for Quebec:

\r\n\r\n
numeric digits 2\r\ndo while input \\= 'END'\r\n   pull input\r\n   say input * 1.07 * 1.08 /* Yes, they tax the tax. I believe the\r\n                            * technical term for this is "money\r\n                            * grubbing." */\r\n\r\nend
\r\n\r\n

If you're at a rexxtry prompt: «do while input \\= 'END'; pull input; say input * 1.07 * 1.08; end», and you get a little interactive prompt that you can just pump the numbers into and get your answers back.

\r\n\r\n

I find that to be a very natural way to write little one-off programs for doing those little things. That's one of the places where rexx is really strong.

--\r\n-------------------------------------------------------------------\r\n* Jack Troughton                            jake at consultron.ca *\r\n* [link|http://consultron.ca|http://consultron.ca]                   [link|irc://irc.ecomstation.ca|irc://irc.ecomstation.ca] *\r\n* Laval Qu\ufffdbec Canada                   [link|news://news.consultron.ca|news://news.consultron.ca] *\r\n-------------------------------------------------------------------
New OK, but...
When I saw "say" I was left wondering whether there would be a return. I had to go google for that.

With my example - perhaps it is that I know Perl but - there seems to be no ambiguity about print. It means output what it is given. No newline inserted.

6 of one, a half-dozen of the either.

Cheers,
Ben
"Career politicians are inherently untrustworthy; if it spends its life buzzing around the outhouse, it\ufffds probably a fly."
- [link|http://www.nationalinterest.org/issues/58/Mead.html|Walter Mead]
New Equivalent in REXX

is charout. It's line oriented counterpart is lineout. They are both also methods for output objects in object rexx.

\r\n\r\n

Classic REXX:

\r\n\r\n
/* hello.cmd */\r\ncharout('Hello, World!')\r\nlineout('Hello, World!')
\r\n\r\n

has the following output

\r\n
Hello, World!Hello, World\r\n<crlf>
\r\n
\r\n\r\n

Object REXX

\r\n\r\n
.output~charout('Hello, World!')\r\n.output~lineout('Hello, World!')
\r\n\r\n

has the same output.

\r\n\r\n

In general, say is pretty much functionally identical to lineout, but it's an instruction, not a function, which makes it useful in places where lineout is not so useful. It's also good to use if you want your program to be more portable... the implementation of say can be quite different on another hardware platform (like eg mainframes) where a lot of the architecture choices of the PC platform just don't apply.

\r\n\r\n

About the ORexx snippet: sometimes, you want to use the .output object, as it can be redirected quite easily, so that a function or method can be run within a context where .output can be stdout, a serial device, etc. Sometimes, you might want to direct it someplace specific:

\r\n\r\n
.stderr~charout('You borked it up this time, Mr. Bond')
\r\n\r\n

Though it's generally a good idea to keep platform specifics in mind when figuring out how to handle things like that.

--\r\n-------------------------------------------------------------------\r\n* Jack Troughton                            jake at consultron.ca *\r\n* [link|http://consultron.ca|http://consultron.ca]                   [link|irc://irc.ecomstation.ca|irc://irc.ecomstation.ca] *\r\n* Laval Qu\ufffdbec Canada                   [link|news://news.consultron.ca|news://news.consultron.ca] *\r\n-------------------------------------------------------------------
New BZZT - Utterly wrong
@And #you $know %why.
-drl
New know how you feel
I had the same reaction when I first encountered Perl. The non-alphabetics were distracting. When I tried to ignore them, the code made even less sense. After a while I began to "get it" and started thinking in Perl. It was a tough adjustment as I didn't have a C, or even a Unix background. Hashes were easy, list vs. scalar mode tripped me up a few times. Now it all makes some kind of sense. Sometimes it's different on different days...
Have fun,
Carl Forde

ps. That's $#you
New Nah...its trivial in Access too.
The Form Wizard can link to an existing table in a database.

So. Create your database....import your xl file into it...(file/get external data/import...name the table...etc...

Then in the database window click under Forms in the objects column...select "create form by using wizard"...and the first thing it does is give you a drop box to select the object you want to create the form from...in your case it would be the table you just created above.

Ez Pz.
You were born...and so you're free...so Happy Birthday! Laurie Anderson

[link|mailto:bepatient@aol.com|BePatient]
New God, Beep! Bound Forms! Bleech!
Although for crap you don't care about maintaining, they're okay ;0)
New It sounded like what he needed.
He didn't ask for pretty or maintainable.
You were born...and so you're free...so Happy Birthday! Laurie Anderson

[link|mailto:bepatient@aol.com|BePatient]
New Understood.
It's just...well,... seeing Access bound forms actually recommended caused me to become faint... ;0)
New Not knowing Access all that well...
...since I haven't used it for anything beyond toy projects (and even those done in VB3 rather than Access proper, IIRC) -- nor anything beyond version 2 or 3 or so -- I must ask: What's so especially horrible about "Access bound forms"?

At the risk of sounding like -- ahem -- Bryce, wouldn't you actually *want* your "small or mid-size business custom applications" to be "forms" (i.e, custom input/editing windows) that are more or less "bound" (in the sense of having a corresponding input/editing widget for [i.e, at least ultimately somehow related to] each particular field in some particular table) to a database/table?

In other words: Is this just another expression of your general aversion for "bound controls", Mike -- or, is it that Access does some excessively weird mangling of even that basic concept?

Just wondering
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New The problem with Access.
... is thinking it's a full blown development environment. It's not quite. Plus good database design is fundamentally Hard and I've not seen Access make that any easier. (I rather doubt it possibly could.) These two can lead to some truly byzantine "applications".

Wade.

"Ah. One of the difficult questions."

New nutshell: Access expects denormalization.
Anything "more complicated" (which, to the experienced developer, is actually less complicated), doesn't fit built-with-a-wizard-cut-n-paste forms.

Many fears are born of stupidity and ignorance -
Which you should be feeding with rumour and generalisation.
BOfH, 2002 "Episode" 10
New Access has some "special features"
I'm not talking about what you and I have discussed at length. ;-)

Access has some odd behavior if you use its "bound forms" for anything non-trivial. In Access, the form itself is bound to a table (or an "updatable query) and Access itself decides when the row is inserted, if it's inserted and on every third full moon (as best I can tell) if it is inserted properly. With bound forms you have VERY limited ability to control when the rows are written or when to bail on an insert (indeed in many cases you CANNOT stop a write even if you try to). And it is VERY cheesy. The built-in Access menus to mangle data can be turned off, but in many cases aren't. And then novices can do stuff like "docmd.MenuItem.Delete" in the wrong places - worse if done through wizards which produce code that would make you whince even harder than you already do looking at VB code.

I could go on from now until I die, but I'll give you better specifics only if you're interested. I don't like to think about this very much ;-)

In sum, Access makes it appear easy to do a database front end, but if you don't know how it really works, you can get your self in jail very easily.
Expand Edited by mmoffitt Nov. 16, 2002, 05:11:06 PM EST
New Thanks, that's quite enough. On that other thing, though...
...I'll hafta get back at ya, 'coz I don't think we *quite* finished that.

Later, though. :-)
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New DTS?
I know that SQL Server DTS services will export and import Excel spreadsheets with ease.

I'm guessing that Access would too, if the data requirements aren't too large.

I do mostly DB2 stuff, but every once in a while, I have to import/export to/from SQL Server and DTS does the job.

I'd say try that.

New Spreadsheet grows up to be a Real Application
Reading through the other posts, I'm not really sure what you want.

Do you want to have your users populate the spreadsheet with a form interface, then move the data into a database in a batch?

Or, do you want this to be an interactive thing, where you create a form and something behind the form inserts directly into the database (with no batches)?
That something could be VB, Access, VC++, C#, or any number of tools...

In the initial post it sounded like you were leaning more toward the first, but the subsequent posts led me to thinking that you might be considering the interactive thing.

I put together a database forms application from a Web Interface using ASP in about two weeks.

The quick and dirty would be to do the form in Excel (since it sounds like you already have the form in Excel), and then use DTS to import to SQL Server.

The interactive thing would take longer, but you're not left doing the import thing once a day, or once a week, etc. But then again, the DTS is so easy that you can easily train an hourly person to do it.

I've seen this happen a number of times at different jobs. You have a spreadsheet that has grown up to the point where it really needs to be an application now. It also has happened with Access. Once you get about 10 users and a few million rows in the tables, and you start doing complex joins, then Access starts breaking and it's time to move up to SQL Server, Oracle, DB2, Sybase, Informix, or something.

The problem is see in most of these situations is that there isn't any funding to create the application. The need is there, but management doesn't understand that what was built doesn't work anymore, and therein lies the problem.

I hope you have understanding management. I sincerely hope you get some budget to do this.

Glen
Expand Edited by gdaustin Nov. 20, 2002, 10:38:33 PM EST
New I'm looking at Access and MySQL now.
Thanks for your post. Time for an update on what I'm doing.

My data is in an Excel 97 spreadsheet. It's only about 50 columns by 150 rows at the moment, but it's getting too unweildy to put new data in using Excel. (There are another 100 columns of data (measurements) that should really go in a different table/spreadsheet, so that'll be split off soon.) So I want to make some forms for new data entry, but I want the same interface to be able to display and print old data. Like a database form.

Excel can make forms for applications like this, but seems to be limited in the number of columns it can support. I found a [link|http://sam308.com/excel/html/database_for_microsoft_excel_.html|shareware application] that'll make Excel 97 act more like a database, but it only supports up to 30 columns.

I received the "Running Excel 97" book by Dodge, et al., that I ordered a few weeks ago. It's worthless in trying to figure out the best way to do database applications with Excel. E.g. it mentions nothing at all about the Data -> Template Wizard...

I've ordered "Mastering Access 97 Development" but haven't received it yet. In the mean time I've made a new spreadsheet and exported it into a table that I can use as an Access database. I've been playing with making a form for it using Access's Form Design View, but am amazed (well, not really) that MS was able to ship such a limited tool. E.g. there doesn't seem to be any way to change the "magnification" of the view so that it's possible to align fields without squinting at the screen, it doesn't seem possible to change the grid, the printed form apparently must look like the displayed form (so if you want a dark background on the screen you get a dark background when it's printed), etc., etc. I'm also amazed at the size of the .mdb file - it's already almost 200 kB and I only have 3 columns of data in it (even after compacting)?!? (The Excel spreadsheet is less than 200 kB when fully populated with lots of colors and formatting...) It looks like Access will do what I want, but only after lots of fighting with it. And I still don't like the idea of using it (due to its reputation for being buggy and crashy), and it seems it's not quite as friendly to get the data on a Palm device as Excel.

I've downloaded MySQL for Win32 along with a lot of add-ons (visual tools, etc.) but haven't had a chance to play with it. I'm concerned that many, including [link|/forums/render/user?username=admin|admin] feel that PostgreSQL is much better, but I'm hoping that it'll be easy to migrate to PostgreSQL if the need arises. I haven't been able to find PosgreSQL binaries for Win32 and building it isn't something I feel able to do at present. I'm waiting for a copy of "PHP and MySQL Development" by Welling and Thomson to arrive. Having the data in MySQL and building a web interface to the data should be the best way to go as everyone will be able to use a browser to get at the data.

Do you want to have your users populate the spreadsheet with a form interface, then move the data into a database in a batch?

I want a cleaner interface to add data to some datastore and display old data. Having the data in Excel is convenient because it lets us have it on Palm and PocketPC devices, but it's not really the right tool for this much data nor for what I want to do. I want to be able to do sorting and searching and grouping of the data in ways that Excel isn't really designed to do. So I want it in a database, and once it's in the database we won't go back to keeping data in the spreadsheet (we'll export tables back to Excel if necessary).

I hope you have understanding management. I sincerely hope you get some budget to do this.

Ha! :-) This is just a small part of my job - keeping track of data and making sure it's in a usable form. No budget for it. :-)

Thanks!

Cheers,
Scott.
New Access, MySQL, PostgreSQL? Why don't you consider a REAL...
...RDBMS -- with stored procedures, SQL-code triggers, "Generators" (="Sequences"), UDFs, etc, etc...?

Available in a [link|http://www.interbase.com|fully commercial version], an [link|http://firebird.sourceforge.net|Open Source version], and a [link|http://www.ibphoenix.com|commercially-supported 'certified' variant] of the Open Source version; something for every taste and wallet.

I just don't understand why people persist in futzing around with stupid kludges, when there's so much better stuff out there...?
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New Christian, WTF are you on about?
Point out one of those features that PostgreSQL doesn't have, apart from the commercial version...

Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New In that case, I'll point to one it *does* have:
A certain Web Forum administrator constantly whining about its horrible drivers, that's one feature PgSql certainly *does* seem to have! :-)

Naah, might not be too much wrong with PgSql; it just annoys the Hell out of me how it seems that once people realize MySql isn't the only open-source RDBMS in the world, it's only because they think PgSql is the only alternative... :-(

Oh yeah, one more thing: How big is PgSql? It just struck me, one other feature it might have, might be Codus Bloatitis... Is it a lot more than a two-and-a-half meg download?

Not that the features I mentioned are the only ones IB/FB has; there's a lot more (among them, a few things Soothsayer is advertising as Great Innovations... Dunno how long IB/FB has had External Tables, f'rinstance).

But the main fault with it, IMO, is its sheer "mind-share", which AFAICS can't help but be totally out of proportion to its merit (and in that sense is, at least in large part, "undeserved"); a "feature" where, it seems to me, PgSql is beaten only by MySql.

See where I'm coming from?


[Edit:] So the "persist in futzing around with stupid kludges" bit was really more about Access and MySql; PgSql got thrown in mostly because it was -- NOW do you SEE where I'm coming from?!? -- the only alternative to those that seemed to have even OCCURRED to the Other Scott.
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
Expand Edited by CRConrad Nov. 21, 2002, 07:03:19 PM EST
New Um, my tinfoil hat seem to work better on you than on admin.
:-)

I looked, a little bit, at lots of other databases. Paradox 10, Interbase/Firebird, Filemaker Pro, and others. I'm not wedded to Access nor MySQL - it's just a place to start for the moment.

...PgSql got thrown in mostly because it was -- NOW do you SEE where I'm coming from?!? -- the only alternative to those that seemed to have even OCCURRED to the Other Scott.

I thought my post was too long as it was! :-)

Cheers,
Scott.
New Yours?!? Isn't it *I* who should be wearing one?
The Other Scott:
I looked, a little bit, at lots of other databases. Paradox 10, Interbase/Firebird, Filemaker Pro, and others. I'm not wedded to Access nor MySQL - it's just a place to start for the moment.
Yeah, we know that *now*... But, no prob:
...PgSql got thrown in mostly because it was -- NOW do you SEE where I'm coming from?!? -- the only alternative to those that seemed to have even OCCURRED to the Other Scott.
See how by this stage, I used the _past tense_ of "seemed"? :-)


I thought my post was too long as it was! :-)
Yours (almost?) never are.
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New PostgreSQL Python drivers...
... are not distributed with Postgres... they are '3rd party' drivers.

The source download is about 9 megs, which includes the backend, utilities, interface APIs (jdbc, tcl, c/c++, odbc, perl, python {not the one I'm using}, and a couple other I don't recognize), the stored proc languages (plpgsql, tcl, perl, python), and the test suite.

The full suite of RHAT RPMs looks to be about 6M or so.

What are External Tables?

Does Interbase have polymorphism/inheritance for its tables?
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New Lot better than I thought... All your fault, though! ;^)
AdmiScott:
PostgreSQL Python drivers [...] are not distributed with Postgres... they are '3rd party' drivers.
Yeah, I suppose I knew that, actually... Hey, I was only trying to make my outburst seem half-way coherent; don't go robbing a poor man of his cobbled-up defense, nowwouldya!?! :-)


The source download is about 9 megs [...] The full suite of RHAT RPMs looks to be about 6M or so.
Wow, that's a LOT better than I thought -- I had the impression it must be in the tens (at LEAST -- possibly HUNDREDS, I'd have thought!) of megabytes.

That must be because you (and p[ossi|roba]bly some others) have so often compared it to Oracle -- which, as you know, doesn't even fit on a single CD! (WTF do they DO with all those hundreds of megabytes?!?)


[...] which includes the backend, utilities, interface APIs (jdbc, tcl, c/c++, odbc, perl, python {not the one I'm using}, and a couple other I don't recognize), the stored proc languages (plpgsql, tcl, perl, python), and the test suite.
That may well be a bit more than at least FB's ~2.5-MB download includes; depends a bit on what you mean by "utilities", and I can't recall at the moment what language inerfaces it includes (probably not as many). And IB proper, while it probably has more stuff, is of course a whole lot bigger, too.


What are External Tables?
The most elegant, IMO (and perhaps easiest), way of getting external data into your DB: just declare a table as residing not actually in your db-file/"table space", but in an external (flat ASCII) file. If you want to move data into the DB permanently (which I assume is a requirement in order to get more efficient indexing, and prolly stuff like referential integrity and so on), just do an SQL copy to another, regular DB-internal, table. You'll have to define field delimiters or column positions, perhaps line-end styles, and so on -- but at least you don't have to mess around with separate programs, which of course require that anyway (coughSQL*Loadercough), any more.


Does Interbase have polymorphism/inheritance for its tables?
Not that I know of... What is *that*?

(Unless you mean the easy way of "inheriting" structure as well as data into a new table in some RDBMSes, by doing a "SELECT <whatever> INTO <New Table Name>"? :-)
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New Re: Lot better than I thought... All your fault, though! ;^)
(WTF do they DO with all those hundreds of megabytes?!?)
They keep the HD manufacturers in business with them, of course...
What are External Tables?
The most elegant, IMO (and perhaps easiest), way of getting external data into your DB: just declare a table as residing not actually in your db-file/"table space", but in an external (flat ASCII) file. If you want to move data into the DB permanently (which I assume is a requirement in order to get more efficient indexing, and prolly stuff like referential integrity and so on), just do an SQL copy to another, regular DB-internal, table. You'll have to define field delimiters or column positions, perhaps line-end styles, and so on -- but at least you don't have to mess around with separate programs, which of course require that anyway (coughSQL*Loadercough), any more.
Hmm. I guess I would rather just use the [link|http://www.us.postgresql.org/users-lounge/docs/7.2/postgres/sql-copy.html|COPY] command and be done with it...

Does Interbase have polymorphism/inheritance for its tables?
Not that I know of... What is *that*?
[link|http://www.us.postgresql.org/users-lounge/docs/7.2/postgres/inherit.html|http://www.us.postgr...gres/inherit.html]


Other interesting features of Postgres include the geometric types, user-defined types/functions/operators, and (one of the best things) the ability to use nearly any language you want to as a stored procedure (with a little extra work to integrate it first if it hasn't already been done).
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New "user-defined types" - would that be SQL-standard 'domains'?
If so, then that (along with roles and views and Idunno what all) is among the many IB/FB features I neglected to mention. As opposed to UDFs, which IIRC I *did* mention... :-)

So what are you saying -- that Larry is collecting a percentage from Seagate, Maxtor, et al?
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New user-defined types
As in, write some external code with save/restore functions, etc., to make your very own new FarbleBanger base type.

[link|http://www.us.postgresql.org/users-lounge/docs/7.2/postgres/xtypes.html|http://www.us.postgr...tgres/xtypes.html]
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New Wow, cool; the FB dev list is only now talking about that...
...kind of thing. Or, OK, they've been mentioning it, on and off, for a bit over a year AFAICR. But it ain't there yet. (Also somewhat reminiscent of how to build TField-descendant object classes, for client-side apps that attach to different kind of DBMSes, in Delphi; those "save/restore functions" are analogous to the getter/setter methods for the AsString property.)

Cool to see that PgSql seems to have copied IB's basic "multigenerational" ("multiversion", in Postgres-speak) architecture, too. (Doesn't seem quite consistently pervasive, though.)

Yeah yeah, I'll lay off the bashing... If the freaking WORLD lays off the hyping! :-)
   Christian R. Conrad
Microsoft is a true reflection of Bill Gates' personality - the sleaziest, most unethical, ugliest little rat's ass the world has seen unto this time.
-- [link|http://z.iwethey.org/forums/render/content/show?contentid=42971|Andrew Grygus]
New Postgres is really a research database
For trying out new things. People use it for the real world too, though. :-)

Some of the contrib items are pretty nifty as well, like the fulltext indexing I use here.
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New That...is frickin cool.
I am way too much of an LCD designer to ever use it but I can dream, can't I?

Many fears are born of stupidity and ignorance -
Which you should be feeding with rumour and generalisation.
BOfH, 2002 "Episode" 10
New What, the inheritance?
Yeah, very.
Regards,

-scott anderson

"Welcome to Rivendell, Mr. Anderson..."
New Cool!
APL as a stored procedure langauge - must investigate...

That is very hip, thanks for pointing it out (would never have guessed).
-drl

I'm so happy I could scalp someone. Mark Twain
New I glanced at it, but didn't bite.
Don't ask me why... I'll keep it on the list. Thanks for the reminder!

Cheers,
Scott.
     Excel 97 spreadsheet to Excel database + form. Tips? - (Another Scott) - (43)
         I'd export to a delimited file - (drewk) - (14)
             Thanks, but that's not what I'm looking for... - (Another Scott) - (13)
                 There's another issue with XL. - (mmoffitt) - (12)
                     Get warp and mesa - (jake123) - (11)
                         REXX??? As in Tyrannosaurus? <vbg? -NT - (mmoffitt) - (10)
                             Pretty much, considering - (jake123) - (9)
                                 REXX is the pre-perl perl -NT - (wharris2) - (8)
                                     Maybe... - (jake123) - (5)
                                         Cheap shots :=) - (wharris2)
                                         How is that a lot easier? - (ben_tilly) - (3)
                                             I didn't say easier. - (jake123) - (2)
                                                 OK, but... - (ben_tilly) - (1)
                                                     Equivalent in REXX - (jake123)
                                     BZZT - Utterly wrong - (deSitter) - (1)
                                         know how you feel - (cforde)
         Nah...its trivial in Access too. - (bepatient) - (8)
             God, Beep! Bound Forms! Bleech! - (mmoffitt) - (7)
                 It sounded like what he needed. - (bepatient) - (6)
                     Understood. - (mmoffitt) - (5)
                         Not knowing Access all that well... - (CRConrad) - (4)
                             The problem with Access. - (static) - (1)
                                 nutshell: Access expects denormalization. - (tseliot)
                             Access has some "special features" - (mmoffitt) - (1)
                                 Thanks, that's quite enough. On that other thing, though... - (CRConrad)
         DTS? - (gdaustin) - (18)
             Spreadsheet grows up to be a Real Application - (gdaustin) - (17)
                 I'm looking at Access and MySQL now. - (Another Scott) - (16)
                     Access, MySQL, PostgreSQL? Why don't you consider a REAL... - (CRConrad) - (15)
                         Christian, WTF are you on about? - (admin) - (13)
                             In that case, I'll point to one it *does* have: - (CRConrad) - (12)
                                 Um, my tinfoil hat seem to work better on you than on admin. - (Another Scott) - (1)
                                     Yours?!? Isn't it *I* who should be wearing one? - (CRConrad)
                                 PostgreSQL Python drivers... - (admin) - (9)
                                     Lot better than I thought... All your fault, though! ;^) - (CRConrad) - (8)
                                         Re: Lot better than I thought... All your fault, though! ;^) - (admin) - (7)
                                             "user-defined types" - would that be SQL-standard 'domains'? - (CRConrad) - (3)
                                                 user-defined types - (admin) - (2)
                                                     Wow, cool; the FB dev list is only now talking about that... - (CRConrad) - (1)
                                                         Postgres is really a research database - (admin)
                                             That...is frickin cool. - (tseliot) - (1)
                                                 What, the inheritance? - (admin)
                                             Cool! - (deSitter)
                         I glanced at it, but didn't bite. - (Another Scott)

I tried it. Little sweet explosions with disgusting texture. It was awful.
168 ms