Перечень статей   choose language


Отображение таблицы 3x100 СУБД
как таблицы 10x10



Соглашения

тегатрибутсвойствостиль
новые html-терминыlinealingpointdefault
значения новых html-терминовsideromb
старые html-терминыtdidlist
значения старых html-терминовcircle
коммуникационный xmlsoundsyncpower
значения коммуникационного xmlnouser
клавиатурные и мышиные командыenter

3 таблицы базы данных в 1 таблицу браузера

Состояние вопроса

Рассмотрим типичную таблицу (такие "широкие" таблицы в дальнейшем будем называть многомерными).

  home horse car yacht
Smith 250 70 50 180
Tomson 340 90 100
Johnson 100 10 210

В базе данных многомерная таблица представлена в виде трех таблиц (которые в дальнейшем будем называть реляционными). Одна (в данном случае таблица "cost") содержит записи из трех полей: номер колонки, номер строки (первичный ключ из двух полей) и значение для ячейки. Две других (в данном случае "things" и "family") - из двух полей: порядковый номер (первичный ключ) и название колонки (или строки).

cost
who what many
1 1 250
1 2 70
1 3 50
1 4 180
2 1 340
2 3 90
2 4 100
3 1 100
3 3 10
3 4 210
things
pk what
1 home
2 horse
3 car
4 yacht
family
pk who
1 Smith
2 Tomson
3 Johnson

Обычно для преобразования реляционной таблицы в многомерную используется пара циклов (один внутри другого). Было бы удобно иметь стандартный оператор этого преобразования! Потому как "многомерность" - визуальное свойство таблицы, оператор должен быть реализован в браузере, а не в SQL.

Концепция

Таблицы в браузер будем передавать в виде текстовых файлов: одна строка - одна запись, поля разделены пробелами, в начальных полях - первичный ключ, остаток строки является частью последнего поля (т.е. последнее поле может содержать пробелы).

В соответствии с математическими обозначениями (ряд значений пробегает сначала последний индекс, затем первый) текстовый файл для "cost" в первом поле имеет номер строки, во втором номер колонки.

Предлагаю использовать теги link внутри тега table-dim (происхождение обозначений: dim = dimentional), причем строки и колонки многомерной таблицы браузер не сортирует, и они получают имена в порядке следования имен в соответствующих файлах.

<table-dim>
 <link src="./things.txt" type="row">
 <link src="./family.txt" type="column">
 <link src="./cost.txt"   type="cell">
</table-dim>

Отправка формы

Если

то браузер посылает следующий XML-текст ("row" и "col" содержат первичные ключи)
<money row="1" col="2" v="80">
<money row="3" col="1" v="110">

Резюме

Атрибуты
тег атрибут список возможных значений
link type row, column, cell



html60author



Перечень статей   choose language


Используются технологии uCoz