Форум: "Базы";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];
ВнизРБД без взаимосвязанных таблиц??? Найти похожие ветки
← →
Val © (2005-11-23 15:21) [40]Удалено модератором
← →
dioman © (2005-11-23 15:29) [41]Удалено модератором
Примечание: Сейчас закроем тебя
← →
__гфф (2005-11-23 15:33) [42]Удалено модератором
Примечание: Офтопик
← →
__гфф (2005-11-23 15:41) [43]Удалено модератором
← →
Sergey13 © (2005-11-23 15:44) [44]Удалено модератором
Примечание: Офтопик
← →
Anatoly Podgoretsky © (2005-11-23 15:44) [45]Реляционные означает что данные получаются в соответствии с операциями отношений, например Fld>N
← →
dioman © (2005-11-23 15:47) [46]Удалено модератором
← →
msguns © (2005-11-23 15:48) [47]>Val © (23.11.05 15:21) [40]
>ля-ля-ля :)
Ля-ля не ля-ля, а доля правды есть.
Строго научно в РБД любое поле любой таблицы является отношением (relation).
По сабжу.
РБД "понимает" отношения в виде полей (колонок таблицы), одного смыслового назначения (упрощенно - типа) о единственном (атомарном) свойстве некоего объекта. Кстати в мануалах на англицком по некоторым буржуинским БД часто-густо вместо "Field" используется "Relation".
Чем в корне отличается от Экселя, у которого нет полей, зато есть ячейки, в которых можно хранить любую информацию о любом объекте или даже нескольких одновременно. Именно потому Эксель не "располагает" аппаратом манипулирования хранящимися в его таблицах данными обобщенно, что свойственно РБД.
Пример простейшей не РБД-базы - любой ini-файл. Та же База Данных, но вовсе не реляционная.
Понятие "реляционное" впервые встретил у Кнута, где он описывал "традиционное" на тот момент фиксированное следование полей (опять же фиксированной длины), которое использовалось при хранении данных в файлах программами Cobol (на счет языка не уверен) и, естественно порядок и длину задавала программа, которые эти данные записывала. Программа-приемник данных должна была читать эти файлы и "разбирать" информацию в том же порядке, что и пишущая. При малейшем изменении "структуры" файла (таблицы) надо было корректировать тексты ВСЕХ программ, использующих его.
В РБД-модели самому файлу предшествует "заголовок" с описанием местоположения и типа полей и программы-клиенты (такого слова в той книжке еще не было) вовсе не обязаны были знать, ГДЕ ИМЕННО в записи находится определенное поле - они обращались к нему ПО ИМЕНИ. "Прослойка" (позже "движок", еще позже - "SQL-сервер") сама по заголовку находила смещение и длину поля и "поставляла" "клиенту" то, что надо.
И уже много позже появились те "отношения", о которых здесь речь: межтабличные, поддержки целостности, иерархические и т.д.
← →
Sergey13 © (2005-11-23 15:48) [48]Удалено модератором
← →
dioman © (2005-11-23 15:51) [49]
> msguns © (23.11.05 15:48) [47]
ну и к чему пришли??? ответ на главный вопрос
> Подскажите, является ли БД реляционной, если некоторые таблицы
> не взаимосвязанны (не содержат внешних ключей)? Если можно,
> то укажите ссылки на литературу.
ДА
← →
Anatoly Podgoretsky © (2005-11-23 15:52) [50]msguns © (23.11.05 15:48) [47]
При малейшем изменении "структуры" файла (таблицы) надо было корректировать тексты ВСЕХ программ, использующих его.
Этим страдают и современные программы.
← →
msguns © (2005-11-23 15:57) [51]В том же ADABAS (русская версия называлась СПЕКТР) для доступа к БД использовалась серия макрокоманд, которые непосредственно обращались к "ядру" СУБД, собственно и реализующему физический доступ к данным. Можно, не сильно поперечив истине, назвать эти макросы "методом доступа", а само ядро - "сервером". По крайней мере назначение этих сущностей было таково.
В "клиентских" программах (обычно на ассемблере для еэсок) осуществлялся вызов нужных функций СУБД посредством макрокоманд и полученная запись отправлялась функциональной программе (обычно на языке высокого уровня: Кобол, PL/I и т.д.). В обратном порядке передавались изменения. Языка запросов как такового не помню, зато были макрокоманды, выполняющие похожие действия (поиск, сортировка, групповая замена и т.д.)
← →
dioman © (2005-11-23 15:59) [52]
> msguns © (23.11.05 15:48) [47]
а чем ini файл не РБД???
есть имя объекта есть свойство (вот тебе 2 поля-отношения)... а все объекты (строки) обладают атомарностью.
← →
__гфф (2005-11-23 15:59) [53]>> Строго научно в РБД любое поле любой таблицы является отношением (relation).
msguns, я всегда считал, что не поле (столбец), а таблица является отношением
и еще я не очень понял, про отличие экселя
← →
msguns © (2005-11-23 16:06) [54]>Anatoly Podgoretsky © (23.11.05 15:52) [50]
>Этим страдают и современные программы.
Не совсем так. "Страдают" программы, написанные бестолково либо в случае действительно "разрушительных" изменений в топологии БД.
Во избежание этого и придумали люди "SQL-server" вместе со всеми его хранимками, триггерами, процедурами, функциями и т.д.
При грамотно спроектированной модели БД и "правильном" пользовательском интерфейсе "клиент" обращается не к таблицам БД, а к элементам логики сервера, описанным во всей этой фигне (ХП, триггера и т.д.). Практически любое изменение в таблицах БД, корректно отображенное в его логике, для "клиента" пройдет вообще незамеченным. Т.е. мы получаем модель, где в идеале хранение данных совершенно отделено от их "восприятия" (отображения). Что, собственно, и ставилось целью "изобретателями" РДБ ;)
← →
Val © (2005-11-23 16:13) [55]Удалено модератором
← →
msguns © (2005-11-23 16:16) [56]>__гфф (23.11.05 15:59) [53]
> я всегда считал, что не поле (столбец), а таблица является отношением
Ну, люди очень много веков считали Землю плоской. И не были от этого несчастливы ;) Таблица - это тоже отношение.
Представь себе модель "Подразделение", хранящееся в таблице РБД. Так вот, каждый работник, описанный отношениями "Фаимлия", "Имя", "Отчество" и т.д. представляет в этой таблице 1 запись и является таким образом отношением "работник". Вся же таблица целиком является отношением "Подразделение".
Т.е. изначально все сущности РБД - это нативные объекты или их характеристики (и то и другое - отношения), выраженные языком цифр и хранящиеся в строго определенном правилами данной РБД виде.
>и еще я не очень понял, про отличие экселя
Попробуй каким-то образом выбрать все строки таблицы, у которых в ячейках Axx значение не "пусто". Может, тогда будет понятнее ;))
← →
__гфф (2005-11-23 16:16) [57]Удалено модератором
Примечание: Парень, наконец ты достиг своего, нападки на модератора прощения не имеют
← →
Val © (2005-11-23 16:17) [58]кстати, ответ на вопрос автора в любом случае "да", поскольку совсем не обязательно _все_ таблицы в базе должны быть между собой связаны :)
← →
Anatoly Podgoretsky © (2005-11-23 16:56) [59]Вроде как пришли к согласию, остался только скользкий вопрос, что считать отношением. Но это еще на несколько дней споров.
← →
msguns © (2005-11-23 17:04) [60]>dioman © (23.11.05 15:59) [52]
>а чем ini файл не РБД???
Во-первых, у ini-файла нет четкой структуры, т.е. жестких правил представления, хранения и извлечения информации из последовательности записанных на магнитном носителе данных. Ini-файл "разберет" только та программа, которая его писала либо другие, которые будут абсолютно точно осведомлены об этом. Этот файл, в отличие от реляционных таблиц, может быть читаем только последовательно, строчка за строчкой.
Во-вторых, к этим данным нельзя обратиться никак иначе, чем только как к строчкам. Нет и не может быть "внешнего" аппартата, универсально осуществляющего доступ к ini-файлам как формату БД
В-третьих, ini-файл не содержит никаких средств упаковки и защиты. Его можно свободно читать и смыслово редактировать из любого софта, работающего с текстовиками.
В-четвертых, в самом ini-файле нет никаких "следов" отношений, "внутренне" определяющих связь между "метаданными" (заголовками) и собственно информацией.
Достаточно ?
← →
Вольный Стрелок © (2005-11-23 17:17) [61]невольно вспоминется Свифт с его остроконечниками и тупоконечниками :)
← →
dioman © (2005-11-23 17:23) [62]
> msguns © (23.11.05 17:04) [60]
какие форматы???? какой доступ??? какая упаковка и защита???
опять 25!!!
это уже технологии, фичи....
мы говорим о реляционной структуре данных! Является ли она таковой!!!
В тетрадке я нарисую таблички!!! и скажу что это РБД.. Вы мне начнете доказывать что это не так потому что она не упаковывается ?? и к ней нельзя обратиться запросом?
Ексель тоже самое!
Другой вопрос о СУБД!!! вот современные СУБД работающие с реляционными данными, предоставляют возможности таковые.
ини файл это представление данных в виде объект-свойство... я говорил о них как это реляционных данных !!! конечно это не СУБД... (в которой можно делать все что ты описал)
А когда появились определения реляционные бд врядли существовали средства упаковки и защиты, просто были описаны их необходимые условия (кторые Вы кстати сами и описывали)
Если Вы хотели приветси пример нереляционных данных, то можно сказать о дереве (иерархические данные), или сети.. короче Граф. Вот Граф - это хороший пример
← →
msguns © (2005-11-23 17:36) [63]>dioman © (23.11.05 17:23) [62]
Зачем кричать-то ?
Я чуть ли не в каждом посте упоминал о некоем "посреднике" между самими данными и программой, их пользующей. Естественно, не бывает яйца без курицы. Правильнее говорить не "РБД", "РСУБД".
Еще раз повторяю - Эксель - такой же РСУБД, как и блокнот, но с существенно бОльшими возможностями. Тогда уж и Ворд - это РСУБД, и Аутлук, да и вообще весь офис ;)
Если стоишь на своем - боже мой, да на здоровьичко !
;)
← →
dioman © (2005-11-23 17:42) [64]
> msguns © (23.11.05 17:36) [63]
> Правильнее говорить не "РБД", "РСУБД".
РБД и РСУБД - это совершенно разные вещи... и вопрос был именно по РБД.
вот тут уж точно....
как сказал __гфф - РТФМ.
← →
msguns © (2005-11-23 17:49) [65]>dioman © (23.11.05 17:42) [64]
>РБД и РСУБД - это совершенно разные вещи... и вопрос был именно по РБД.
Неужели ?
Ну тогда ищи другого собеседника ;)
Страницы: 1 2 вся ветка
Форум: "Базы";
Текущий архив: 2006.01.22;
Скачать: [xml.tar.bz2];
Память: 0.59 MB
Время: 0.033 c