List of articles   Terminology   Choose language


Advantages of wide-spread conventions above proprietary conventions


Format of data

DBMS uses at least one communicational format of data, because it can't transfer generally without any format (it's banality). And if we force to use wide-spread format instead of personal format of DBMS, then we remove gasket, which convert from personal format into wide-spread format. This is very actual, because applied specialists, automating own activity without programmer, can not adjust libraries of such gaskets as php, perl, etc.

Both output, and input of data is most natural as XML-text, because it is accessable for man to direct perception and editing (unlike binary formats). This is demonstratively reflected in modern tendency to use XML for communication between heterogeneous user agents. And SQL/XML-functions are also un-necessary.

In case of joining of tables, tag get name of table, mentioned first after word 'from'. Selection of tree for output is executed in the same way, as for inserting into xml-field.

DMLoutput
select @id, @data from tab;
<tab   id=3     data=12.3>
<tab   id=7     data=23.4>
<tab   id=10    data=34.5>
<tab   id=25    data=45.6>
select tab2/@data2, tab1/@data1
from   tab1, tab2
where  tab2/@fld2=tab1/@fld1;
<tab1  data2=3  data1=12.3>
<tab1  data2=7  data1=23.4>
<tab1  data2=10 data1=34.5>
<tab1  data2=25 data1=45.6>
select * from a.b.c;
<a     id=1     data=12.3>
  <b   id=10    data=23.4>
    <c id=100   data=56.7/>
    <c id=101   data=67.8/>
  </b>
  <b   id=20    data=34.5>
    <c id=200   data=78.9/>
    <c id=201   data=89.1/>
  </b>
  <b   id=30    data=45.6>
    <c id=200   data=91.2/>
  </b>
</a>
select '<?xml-stylesheet
  type="text/xsl" href="a.xsl"?>';
<?xml-stylesheet type="text/xsl" href="a.xsl"?>'

Transfer protocol

DBMS must use at least one communication protocal, because it can't work generally without it (it's also trivial). And if we force to use wide-spread protocal instead of proprietary protocal, we remove gasket, which convert from proprietary protocal into wide-spread protocal. Once again this is very actual, because applied specialists, automating own activity without programmer, can not adjust libraries of such gaskets as php, perl, etc.

The most widely-used protocol is HTTP from all protocols (http, ftp, smtp, pop3, etc), so it's necessary to use it. If user agent (for example, browser) requires to closed data (oneped data is only data of user 'anonymous'), then DBMS asks login also through HTTP. Picture can be value of field, but its URL instead of picture is sent into output as value of this field for separate HTTP-request of user agent.

Accordingly program-terminal ('SqlPlus.exe' for Oracle, 'PgSql.exe' for Postgres, 'iSql.exe' for InterBase, etc.) also uses HTTP.

c:/dir>  terminal.exe remote.database.com username password a.xml

c:/dir>  terminal.exe 127.0.0.1           username password a.xml

To create answer for user, database can use not only own data, but also can call data in other databases from trigger (XML makes database of different manufacturers compatible; if fields username and password of table sys are equal null, then database sends as 'anonymous').

sql>     update sys set
           @ral="database.remote.com",
           @username="tomson",
           @password="my_pwd";
sql>     select * from a.b.c;
sql>     update sys set
           @ran="101.102.103.104",
           @username="tomson",
           @password="my_pwd";
sql>     select * from a.b.c;

Dmitry Turin



List of articles   Terminology   Choose language


Сайт управляется системой uCoz