Comments on the Euphoria Database System
- Posted by Nick Johnson <arachnid at MAD.SCIENTIST.COM> Mar 09, 2000
- 501 views
------=_NextPart_000_0034_01BF89DF.9DA1C440 charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable More accurately, shouldnt this be the Euphoria Datastore? It acts more = like one, having key/value pairs as it's method of storage. I like it. Someone suggested multiple indexes. These should be simple enough to = create yourself - just create a table, and for each record set the key = to the value you wish to use as index value, and the value to the key to = the record this references in the main table. What I would really like to see is a way to create table joins - perhaps = a sort of semi-SQL. So if you had two tables, People and Pets, and each = pet had a PersonId, and you wanted to get each pet along with the gender = of it's owner, you could. In semi-sql it would look something like this: SELECT People{3}, ;The third item in the sequence is the = gender Pets{3} ;The second item in the sequence is = the pets name FROM People, Pets WHERE Pets{2} =3D People{1} ;Where the pets personId =3D the = persons personId Does this make sense? You could refer to nested sequences like this = {1,2,3}, which would be the number 24 in this sequence:=20 {{6, {{1, 2}, 18, 24}, 21, 2}, {2, 18, 3}, 7} Nick ------=_NextPart_000_0034_01BF89DF.9DA1C440 charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META content=3D"text/html; charset=3Diso-8859-1" = http-equiv=3DContent-Type> <META content=3D"MSHTML 5.00.2614.3500" name=3DGENERATOR> <STYLE></STYLE> </HEAD> <BODY bgColor=3D#ffffff> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial size=3D2>More = accurately, shouldnt=20 this be the Euphoria Datastore? It acts more like one, having key/value = pairs as=20 it's method of storage. I like it.</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"> </DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial size=3D2>Someone = suggested=20 multiple indexes. These should be simple enough to create yourself - = just create=20 a table, and for each record set the key to the value you wish to use as = index=20 value, and the value to the key to the record this references in the = main=20 table.</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"> </DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial size=3D2>What I = would really like=20 to see is a way to create table joins - perhaps a sort of semi-SQL. So = if you=20 had two tables, People and Pets, and each pet had a PersonId, and you = wanted to=20 get each pet along with the gender of it's owner, you could. In semi-sql = it=20 would look something like this:</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial = size=3D2> =20 SELECT People{3}, ;The third item in = the=20 sequence is the gender</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial = size=3D2> =20 = =20 Pets{3} ;The second item in the = sequence is=20 the pets name</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial = size=3D2> =20 FROM People, Pets</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial = size=3D2> =20 WHERE Pets{2} =3D People{1} ;Where the pets personId = =3D the=20 persons personId</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial size=3D2>Does this = make sense? You=20 could refer to nested sequences like this {1,2,3}, which would be the = number 24=20 in this sequence: </FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial size=3D2>{{6, {{1, = 2}, 18, 24},=20 21, 2}, {2, 18, 3}, 7}</FONT></DIV> <DIV style=3D"MARGIN-RIGHT: 0px"> </DIV> <DIV style=3D"MARGIN-RIGHT: 0px"><FONT face=3DArial=20 ------=_NextPart_000_0034_01BF89DF.9DA1C440--