Help needed with SQL...

2003-02-25 Thread M Wells
Hi All,

I'm having problems creating a query to return a recordset from the
following situation:

I have two tables, one which contains member details, and the other
which contains details re: the groups to which the member belongs.

When a member logs into a particular part of my site, I want to show
them the details of the other people who belong to the same groups they
do.

Let's say my Members table looks like this:

memberid, membername, memberemail

1, john doe, [EMAIL PROTECTED]
2, jane doe, [EMAIL PROTECTED]
3, joe bloggs, [EMAIL PROTECTED]
4, inigo montoya, [EMAIL PROTECTED]

And my Groups table looks like this:

groupname, memberid

group1, 1
group1, 2
group2, 1
group2, 4
group3, 3

So, if I passed the query the memberid value of '1', I'd like to return
a a unique records recordset of:

1, john doe, [EMAIL PROTECTED]
2, jane doe, [EMAIL PROTECTED]
4, inigo montoya, [EMAIL PROTECTED]

Can anyone help me work out how to achieve this?

Many thanks in advance!

Regards and best wishes,

Murray Wells



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php



Access XP crashes regularly when linked to MySQL via MyODBC

2003-01-28 Thread M Wells
Hi All,

My MySQL Server is 3.23.53-max-nt. I'm linking to it via MyODBC
3.51.05.00 and accessing its tables via Access XP linked tables.

For some reason, Access XP crashes regularly in this setup. No
meaningful error messages, just crashes and reloads after a repair. Even
more odd (and I only have subjective observation to back this up), it
appears to only crash when left unattended for a period of time.
Although, maybe I have that impression because when left alone for a
period of time equates to running long enough to have encountered a
problem? 

Is this a known problem with MySQL 3.23.53-max-nt / MyODBC 3.51.05.00 /
Access XP?

Regards and best wishes,

Murray Wells



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




Workable solution: writing program to communicate with remote internet MySQL server

2003-01-25 Thread M Wells
Hello All,

Just thought I'd report back with what seems to be a simple, elegant
solution to my previous inquiry re: writing a program to connect with
the MySQL server that powers my internet site from my desktop PC.

Yesterday I downloaded the latest release of PHP (ver 4.3.0) and, while
reading the announcements and release notes, I noticed that PHP appears
to be positioning itself as not only a dynamic environment for web site
development (and one amply provided with functionality to connect to
MySQL), but also as a serious contender for the local desktop scripting
jobs, presumably in response to the growing popularity of packages such
as Perl / Python / Ruby / etc for desktop tasks.

To this end it appears the PHP team have been developing a command line
interface flavour of PHP to complement the popular web server flavour.
The CLI flavour appears to run oblivious to your local web server
environment and presumably is available even if you don't have Apache /
IIS / etc installed or configured to serve PHP pages (though, I must
admit I haven't had a chance to test whether this is the case). 

And the great thing about THAT, from my perspective, is that
communicating from my desktop PC to my web site's MySQL server on my
host's machines is as simple as:

$db = mysql_pconnect(mydomainname.com, myusername,
myusernamepassword);

In the same script I can easily connect to both my local machine's MySQL
server and my host's remote MySQL server, compare recordsets retrieved
from both and fire synchronizing update / insert / delete statements in
response to any differences. 

As a bonus, I can fire PHP CLI scripts from my box's task scheduler, so
I can write scripts to automatically update my remote server in quiet
times of the morning, or hourly and so on.

I'd also like to thank the several people who communicated with me
off-list re: possible solutions to my list question on this topic. All
of your suggested solutions were helpful and appreciated.

Regards and best wishes,

Murray Wells,
Urban Legend Web Design (ABN 18 635 979 727)




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




RE: Writing program to communicate with remote internet MySQL server?

2003-01-24 Thread M Wells
Hi Gelu,

I agree with you, and it's an excellent suggestion.

On the other hand, I am generally interested in whether or not it's
within my abilities / available toolset to do this, and it would allow
me to develop far more specific / personalised 'synchronisation'
processes.

Anyone have any thoughts on how this could be achieved?

Regards and best wishes,

Murray Wells


-Original Message-
From: Gelu Gogancea [mailto:[EMAIL PROTECTED]] 
Sent: Friday, 24 January 2003 7:24 AM
To: Murray Wells; [EMAIL PROTECTED]
Subject: Re: Writing program to communicate with remote internet MySQL
server?

Hi,
IMHO:
I think the better way is to use replication between your local MySQL
server
and MySQL from the Web Server.

Regards,

Gelu
_
G.NET SOFTWARE COMPANY

Permanent e-mail address : [EMAIL PROTECTED]
  [EMAIL PROTECTED]
- Original Message -
From: Murray Wells [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, January 23, 2003 4:30 PM
Subject: Writing program to communicate with remote internet MySQL
server?


 Hello All,

 For some time I've been wondering if it's possible to write a program
 that can automatically check my local MySQL server, create a recordset
 containing any new or updated records found in my local table(s) since
 the last check, and upload those new / updated records to the MySQL
 server my web site uses at phpwebhosting.com.

 My background is VB / VBA, but I also have access to Perl, Python and
 Ruby.

 I'm wondering if anyone can tell me if it's possible, using one of
these
 languages, to connect to a remote MySQL server over the internet and
to
 manipulate tables on the remote server as though they were recordset
 objects, similarly to how you might achieve this on a local server
using
 MyODBC?

 The end goal is to develop a program I can fire as a Windows XP
 scheduled task to synchronize the remote database with the local one.

 Any help appreciated!

 Regards and best wishes,

 M Wells



 -
 Before posting, please check:
http://www.mysql.com/manual.php   (the manual)
http://lists.mysql.com/   (the list archive)

 To request this thread, e-mail [EMAIL PROTECTED]
 To unsubscribe, e-mail
[EMAIL PROTECTED]
 Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail
[EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




RE: solution for opposite of this join / join from this subselect

2003-01-23 Thread M Wells
 exactly the same recordset as the RIGHT JOIN example above it.
So, the 'direction' of the join indicates which side of the tables
listed in the FROM clause will return all of their rows, and which side
will only return the data matched by the ON clause (and which can then
usually be further qualified / restrained by WHERE clauses).

In theory, it should be possible to retrieve a recordset that combines
the LEFT JOIN and RIGHT JOIN results from our examples above in a single
recordset. 

This would probably look something like:

NULL,NULL,project2
employee1,employee details1,project1
employee2,employee details2,project3
employee3,employee details3,NULL
employee4,employee details4,project4

This is usually performed by a FULL JOIN, but I am under the impression
that MySQL has yet to implement FULL JOINs (certainly, I can't get them
to work on ver 3.23.53 and the documentation for my version indicates
FULL JOINs are expected in ver 4.0 or 4.1).

Now, to go back to your original question, the people / events /
attendance example employed both a LEFT JOIN and a RIGHT JOIN because
the attendance table was acting as an intermediary between the people
and events tables. From my Microsoft Acess background, I would call this
a 'FIND UNMATCHED' query, although instead of finding the records in one
table that aren't reflected in another [1], we're finding and combining
the records from two tables that aren't associated with each other in a
third. I personally can't think of a way of representing the same query
you have developed but only using LEFT JOINs. I'm not in a position to
say it can't be done, but I certainly can't think of a way to do it.

All the best,

M Wells

[1] As a simple example of a 'find unmatched' query, if we had a table
that contained a record for each of the files on your computer and a
table of all of the files from your computer that you've backed up onto
a CD, then finding the records in your [allfiles] table that are
unmatched (i.e. don't exist) in your [backeduptocd] table should equate
to a list of all of the files on your computer that have yet to be
backed up to CD

-Original Message-
From: Josh L Bernardini [mailto:[EMAIL PROTECTED]] 
Sent: Thursday, 23 January 2003 5:24 AM
To: [EMAIL PROTECTED]
Subject: solution for opposite of this join / join from this subselect

thanks to brent, bob and M wells for their contributions to this
solution
and to m especially who seems to have put in a lot of time and nailed
it.

This query returns a list of people not attending a particular event,
given
an events table, a people table, and a many-many epeople table between
them. You can modify the where clause to show all the people attending a
particular event, all the events a person isn't/is attending - most of
what
you might need in most many - many relationships.

But I still haven't figured out the importance of left joins vs. right
joins. can anyone explain why this statement requires a right join to
work?
could it be rewritten to use a left join?

mysql SELECT lastname, firstname, title, event
- FROM people p
- LEFT JOIN epeople ep on p.id = ep.pid
- right join events e ON e.id = ep.eid
- WHERE ep.pid IS NULL
- and ep.eid is null
- and e.id=2
- ORDER BY e.id;


I reworte the statement like this and from doing so understand that, OK
epeople as the pivot point between the two tables needs to be on the
outside of the join  - really placing it between the two tables. we're
looking for people where there is no record match for epeople.
SELECT lastname, firstname, title, event
FROM events e
LEFT JOIN epeople ep on e.id = ep.eid
right join people p ON p.id = ep.pid
WHERE ep.pid IS NULL
and e.id=2
ORDER BY e.id;


now whats the functional difference between this

SELECT lastname, firstname, title, event
FROM people p
LEFT JOIN epeople ep on p.id = ep.pid
right join events e on ep.eid = e.id
WHERE ep.pid IS NULL
and e.id = 2
ORDER BY ep.eid;

and this

SELECT lastname, firstname, title, event
FROM people p
LEFT JOIN epeople ep on p.id = ep.pid
right join events e on ep.eid = e.id
WHERE ep.pid IS NULL
and ep.eid=2
ORDER BY e.id;

as written the difference is in the and statements but in my result set
ep.eid == e.id == 2 so why can't you use the second statement
interchangably with the first?

thanks for any insights,
jb



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail
[EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL

Writing program to communicate with remote internet MySQL server?

2003-01-23 Thread M Wells
Hello All,

For some time I've been wondering if it's possible to write a program
that can automatically check my local MySQL server, create a recordset
containing any new or updated records found in my local table(s) since
the last check, and upload those new / updated records to the MySQL
server my web site uses at phpwebhosting.com.

My background is VB / VBA, but I also have access to Perl, Python and
Ruby.

I'm wondering if anyone can tell me if it's possible, using one of these
languages, to connect to a remote MySQL server over the internet and to
manipulate tables on the remote server as though they were recordset
objects, similarly to how you might achieve this on a local server using
MyODBC?

The end goal is to develop a program I can fire as a Windows XP
scheduled task to synchronize the remote database with the local one. 

Any help appreciated!

Regards and best wishes,

M Wells



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




RE: opposite of this join

2003-01-21 Thread M Wells
Hi Josh,

I'm hesitant to make the following suggestion, mainly because I'm not
terribly clued up with SQL myself, however the following APPEARS to
deliver something close to what you're looking for. It relies on
breaking your recordsets into 3 tables, as your situation appears to
already do, 1 for People (tblPeople), 1 for Events (tblEvents), 1
indicating which People are attending which Events (tblAttendance).

The tblPeople table contains just one record per person in the database.
Similarly, the tblEvents table contains just one record per event.
tblAttendance, however, contains a record for each Event a Person is
attending. From what I read of your original post, this appears to be
the approach you are already taking.

The task, as I understand it, is to return a recordset indicating which
Events are NOT being attended by which People?

To demonstrate the SQL I used, I created the following example tables
and inserted the following example records:

CREATE TABLE `tblPeople` (`personid` int NOT NULL AUTO_INCREMENT ,
`surname` varchar(100) NOT NULL DEFAULT '' , `givennames` varchar(100)
NOT NULL DEFAULT '' , `contactdetails` varchar(100) NOT NULL DEFAULT ''
, PRIMARY KEY (`personid`)) TYPE=MYISAM ROW_FORMAT=DEFAULT

CREATE TABLE `tblEvents` (`eventid` int NOT NULL AUTO_INCREMENT ,
`eventname` varchar(100) NOT NULL DEFAULT '' , `eventdesc` varchar(100)
NOT NULL DEFAULT '' , PRIMARY KEY (`eventid`)) TYPE=MYISAM
ROW_FORMAT=DEFAULT

CREATE TABLE `tblAttendance` (`attendid` int NOT NULL AUTO_INCREMENT ,
`personid` int NOT NULL, `eventid` int NOT NULL, PRIMARY KEY
(`attendid`)) TYPE=MYISAM ROW_FORMAT=DEFAULT;

INSERT INTO tblPeople (surname, givennames, contactdetails) VALUES
('surname 1', 'given names 1', 'contact details 1');
INSERT INTO tblPeople (surname, givennames, contactdetails) VALUES
('surname 2', 'given names 2', 'contact details 2');
INSERT INTO tblPeople (surname, givennames, contactdetails) VALUES
('surname 3', 'given names 3', 'contact details 3');
INSERT INTO tblPeople (surname, givennames, contactdetails) VALUES
('surname 4', 'given names 4', 'contact details 4');

INSERT INTO tblEvents (eventname, eventdesc) VALUES ('event 1', 'event
description 1');
INSERT INTO tblEvents (eventname, eventdesc) VALUES ('event 2', 'event
description 2');
INSERT INTO tblEvents (eventname, eventdesc) VALUES ('event 3', 'event
description 3');
INSERT INTO tblEvents (eventname, eventdesc) VALUES ('event 4', 'event
description 4');

INSERT INTO tblAttendance (personid, eventid) VALUES (1,1);
INSERT INTO tblAttendance (personid, eventid) VALUES (1,2);
INSERT INTO tblAttendance (personid, eventid) VALUES (1,3);
INSERT INTO tblAttendance (personid, eventid) VALUES (2,2);
INSERT INTO tblAttendance (personid, eventid) VALUES (2,3);
INSERT INTO tblAttendance (personid, eventid) VALUES (2,4);
INSERT INTO tblAttendance (personid, eventid) VALUES (3,1);
INSERT INTO tblAttendance (personid, eventid) VALUES (3,3);
INSERT INTO tblAttendance (personid, eventid) VALUES (3,4);
INSERT INTO tblAttendance (personid, eventid) VALUES (4,1);

In the tables above we see that Person1 attended Event1, Event2 and
Event3 but didn't attend Event4. Person2 attended Event2, Event3 and
Event4 but didn't attend Event1. Person3 attended Event1, Event3 and
Event4 but didn't attend Event2. And Person4 only attended Event1,
missing out on attending Event2, Event3 and Event4.

If I understand your needs correctly, this means you need to return a
recordset indicating Person1 didn't attend Event4, Person2 didn't attend
Event1, Person 3 didn't attend Event2 and Person4 didn't attend Event2,
Event3 or Event4?

Okay, first things first -- the following SQL statement returns a
recordset indicating which events which people DID attend:

SELECT tp.surname, tp.givennames, tp.contactdetails, te.eventname,
te.eventdesc FROM tblPeople tp, tblEvents te, tblAttendance ta WHERE
tp.personid = ta.personid AND te.eventid = ta.eventid;

The recordset returned by this statement looks something like:

'surname 1','given names 1','contact details 1','event 1','event
description 1'
'surname 1','given names 1','contact details 1','event 2','event
description 2'
'surname 1','given names 1','contact details 1','event 3','event
description 3'
'surname 2','given names 2','contact details 2','event 2','event
description 2'
'surname 2','given names 2','contact details 2','event 3','event
description 3'
'surname 2','given names 2','contact details 2','event 4','event
description 4'
'surname 3','given names 3','contact details 3','event 1','event
description 1'
'surname 3','given names 3','contact details 3','event 3','event
description 3'
'surname 3','given names 3','contact details 3','event 4','event
description 4'
'surname 4','given names 4','contact details 4','event 1','event
description 1'

Now, the following SQL statement identifies which events which people
DIDN'T attend:

SELECT tp.surname, tp.givennames, tp.contactdetails, te.eventname,
te.eventdesc FROM tblPeople tp 

RE: MySQL Database Design

2003-01-10 Thread M Wells
Hi Brian,

By no means am I a MySQL guru (or any other database server environment
guru, for that matter), but could you simply have a reference table that
indicates the percentage of the grape used in the relevant wine?

So, you might have three tables, Wines, GrapeVariety,
Wines_GrapeVarietiesUsed (or whatever).

In Wines, you record the details of the wine in question. In
GrapeVariety you record the details of the different grapes. In
Wines_GrapeVarietiesUsed, you record the key from the Wine table, the
key from the GrapeVariety table, and the percentage of the grape
variety.

As an example:

Wines:

Wineid, winename, winedescription
1, wine1, wine description 1
2, wine2, wine description 2
3, wine3, wine description 3

GrapeVariety:

Varietyid, varietyname, varietydescription
1, variety1, variety description 1
2, variety2, variety description 2
3, variety3, variety description 3

And then in Wines_GrapeVarietiesUsed:

Wineid, varietyid, percentage
1, 1, 1
2, 2, 1
3, 1, 0.2
3, 2, 0.3
3, 3, 0.5

In this example we have 3 bottles of wine and three varieties. Wines 1 
2 use 100 percent (i.e. 1) of varieties 1 and 2 respectively, whereas
wine 3 uses all three grape varieties with 20 percent of variety1, 30
percent of variety2 and 50 percent of variety3.

To perform a query that would depict all of this in a single resultset,
you might do something like:

SELECT w.winename, w.winedescription, v.varietyname,
v.varietydescription, gv.percentage FROM wines w, GrapeVariety v,
Wines_GrapeVarietiesUsed gv WHERE w.wineid = gv.wineid AND v.varietyid =
gv.varietyid;

What this delivers is a recordset that looks something like:

'wine1','wine description 1','variety1','variety description 1','1'
'wine2','wine description 2','variety2','variety description 2','1'
'wine3','wine description 3','variety1','variety description 1','0.2'
'wine3','wine description 3','variety2','variety description 2','0.3'
'wine3','wine description 3','variety3','variety description 3','0.5'

Below are the CREATE TABLE and INSERT INTO statements I used to build
this example.

Hope this helps a little,

All the best,

MW

CREATE TABLE Wines (wineid INT(10)  unsigned NOT NULL auto_increment,
winename VARCHAR(100), winedescription TEXT, PRIMARY KEY (`wineid`))
TYPE = MYISAM;

CREATE TABLE GrapeVariety (varietyid INT(10) unsigned NOT NULL
auto_increment, varietyname VARCHAR(100), varietydescription TEXT,
PRIMARY KEY (`varietyid`)) TYPE = MYISAM;

CREATE TABLE Wines_GrapeVarietiesUsed (wineid INT(10) unsigned NOT NULL,
varietyid INT(10) unsigned NOT NULL, percentage float NOT NULL default
'0') TYPE=MYISAM;

INSERT INTO wines (winename, winedescription) VALUES ('wine1', 'wine
description 1');
INSERT INTO wines (winename, winedescription) VALUES ('wine2', 'wine
description 2');
INSERT INTO wines (winename, winedescription) VALUES ('wine3', 'wine
description 3');
INSERT INTO GrapeVariety (varietyname, varietydescription) VALUES
('variety1', 'variety description 1');
INSERT INTO GrapeVariety (varietyname, varietydescription) VALUES
('variety2', 'variety description 2');
INSERT INTO GrapeVariety (varietyname, varietydescription) VALUES
('variety3', 'variety description 3');
INSERT INTO Wines_GrapeVarietiesUsed (wineid, varietyid, percentage)
VALUES (1,1,1);
INSERT INTO Wines_GrapeVarietiesUsed (wineid, varietyid, percentage)
VALUES (2,2,2);
INSERT INTO Wines_GrapeVarietiesUsed (wineid, varietyid, percentage)
VALUES (3,1,.2);
INSERT INTO Wines_GrapeVarietiesUsed (wineid, varietyid, percentage)
VALUES (3,2,.3);
INSERT INTO Wines_GrapeVarietiesUsed (wineid, varietyid, percentage)
VALUES (3,3,.5);

-Original Message-
From: Colaluca, Brian [mailto:[EMAIL PROTECTED]] 
Sent: Friday, 10 January 2003 6:56 AM
To: [EMAIL PROTECTED]
Subject: MySQL Database Design

I am in the midst of designing a personal database for keeping track of
wines.  After perusing through several beginner books on MySQL and PHP,
I
have decided that my next step would be to embark upon database design.


My design is almost complete and normalized, although I do expect to be
making many tweakings as my knowledge progresses.

I have come to a brick wall on one facet of my design, however.  I've
come
to understand that having a lot of NULLs in your database may be a sign
of a
poor design.  And yet I'm having a problem reconciling this with the
wildly
un-uniform world of wines from around the world.  For instance, I would
like
to have a table called GrapeVariety, and have the variety_id be a
primary
key.  Another table would be Wine.  And yet, one wine could have one
type
of grape or more. 

For instance, let's say that wine XYZ has 80% GrapeA, and 20% GrapeB.
Since
my grape variety would presumably be a foreign key in the Wine table,
how
could I specify a certain *percentage* of a foreign key?  I've tried
hashing
this out in numerous ways, including the addition of a Blend table
with
multiple primary keys, but anyway I slice it, there will still be an
abundance of NULLs.  For 

RE: MySQL as a desktop DB

2002-09-29 Thread M Wells

Hi Arthur,

Which version of MySQL / MyODBC are you using? I tried building an app
with an Acc2000 frontend and a MySQL backend using MyODBC and kept
running into a problem where the record being edited would become
'locked' and wouldn't allow me to update (from memory it was something
along the lines of the table reporting it was busy performing another
action or similar).

This frustrated me enough that I finally gave it away and now use SQL
Server as my 'big backend.'

Regards,

M.

-Original Message-
From: Arthur Fuller [mailto:[EMAIL PROTECTED]] 
Sent: Monday, 30 September 2002 12:12 AM
To: David Lloyd; Adam Parker
Cc: [EMAIL PROTECTED]
Subject: Re: MySQL as a desktop DB

I don't think Access is crap at all. In fact I think it's a) the best
RAD
front end going for SQL Server and perhaps for MySQL too. I use Access
2000
and 2002 + MyODBC to create front ends to MySQL databases and the
combination works great. In less than one morning I successfully ported
the
Northwind sample application to MyOBC+MySQL. I had to fix a couple of
queries that wouldn't translate, but other than that it worked like a
charm.
And one of the best reasons to go with such a combination is that Access
can
save named queries, which can then be combined. For example:

qryProductsList:
SELECT products.ProductID, products.ProductName, products.UnitPrice,
products.SupplierID
FROM products
ORDER BY products.ProductName;

qrySuppliersList:
SELECT suppliers.SupplierID, suppliers.CompanyName
FROM suppliers
ORDER BY suppliers.CompanyName;

qryCombinedProductsAndSuppliersList:
SELECT qryProductsList.ProductName, qryProductsList.UnitPrice,
qrySuppliersList.CompanyName
FROM qrySuppliersList INNER JOIN qryProductsList ON
qrySuppliersList.SupplierID = qryProductsList.SupplierID;

MySQL by itself doesn't provide this kind of capability. I find it
enormously valuable.

Just my $.02.

Arthur

- Original Message -
From: David Lloyd [EMAIL PROTECTED]
To: Adam Parker [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
Sent: Tuesday, September 24, 2002 8:37 PM
Subject: Re: MySQL as a desktop DB



 Adam,

  Obviously MySQL would have advantages if I intended to use it as a
server
  database with concurrent users. But is it faster than Access in the
  single-user environment, when dealing with large databases?

 MySQL in a single user environment is a pain in the arse because of
its
 lack of an Access Like front end that is actually useful and
featureful
 (Access is crap, but it's a better database frontend than currently
 exists).

 (mysql, query)

 DSL
 --
 I reniad lin ne mor, nuithannen
   In gwidh ristennin, i fae narchannen
 I lach Anor ed ardhon gwannen
   (Soundtrack LOTR - and it's not LATIN)

 -
 Before posting, please check:
http://www.mysql.com/manual.php   (the manual)
http://lists.mysql.com/   (the list archive)

 To request this thread, e-mail [EMAIL PROTECTED]
 To unsubscribe, e-mail
[EMAIL PROTECTED]
 Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail
[EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php