Для начала имеет смысл посмотреть как БД пишут другие. Например, можно посмотреть исходные коды SQLite (https://www.sqlite.org/download.html). Это простая и свободная для использования БД, которую можно свободно встроить в вашу программу. Если ее производительности и возможностей окажется мало, тогда только стоит задумываться о своей собственной.
Кроме того, есть базы не реляционные (без SQL), например CaouchDB, Опять же стоит посмотреть на нее. Прежде чем изобретать собственный велосипед имеет смысл разобраться как у других педали крутятся, а это означает изучить теорию построения баз данных.
Java
Как написать СУБД?
На Java? Никак. Она получится слишком медленной и потому неконкурентоспособной.
А в целом - начни с изучения математики: теории множеств и логики первого порядка. Именно они лежат в основе реляционных алгебры на которой построены все реляционные базы данных. SQL - это всего лишь попытка создать удобную запись для реляционной алгебры (причём даже не полной).
А в целом - начни с изучения математики: теории множеств и логики первого порядка. Именно они лежат в основе реляционных алгебры на которой построены все реляционные базы данных. SQL - это всего лишь попытка создать удобную запись для реляционной алгебры (причём даже не полной).
Чтобы ответить на ваш вопрос, нужно сидеть вместе как в школе и разбираться. Быстро и в одном ответе не получится дать полноценный ответ. Это семестровый или годичный курс ВУЗа.
База данных хранится в файле или в наборе файлов. У файлов есть определенный формат, то есть существуют структуры, которые осуществляют запись в файл и считывают их оттуда. Для запроса вам потребуется реализовывать язык запросов.
Простейшей базой данных можно считать двоичный файл, в которые записаны структуры.
Для начала нужно будет скачать JDK и установить программу NetBeans. В комплекте идет документация. Кроме этого, требуется освоить синтаксис языка Java с помощью какой-нибудь книги для начинающих. После этого потребуется освоить объектно-ориентированное программирование. Типы данных, переменные, условные операторы, циклы, функции, константы, аргументы функций, ВОЗВРАЩАЕМЫЕ ФУНКЦИЕЙ ЗНАЧЕНИЯ, ЛИТЕРАЛЫ, операторы, классы, наследование, перегрузка операторов, методы классов, инкапсуляция данных в классе, поля классов, паттерны или шаблоны объектно-ориентировного программирования, процедурное программирования, объектно-ориентированное проектирования, иерархия классов, связи между классами и другие базовые знания синтаксиса языка.
Вам нужно будет изучить язык SQL и теорию баз данных, теорию реляционных баз данных.
Чтобы создать лексический и синтаксический анализатор языка запросов к СУБД, вам нужно будет изучить теорию написания лексических и синтаксических анализаторов, парсеров
База данных - набор таблиц с определенными полями и связей между ними. Должен быть реализован механизм создания базы данных по метаданным.
Попробуйте изучить существующие базы данных, чтобы разобраться, какони работают - Access, Interbase, Firebird,DB2, postgresql, sun-oracle, ms sql server и др.
Для того, чтобы задавать вопросы, есть специализированный форум sql.ru
База данных хранится в файле или в наборе файлов. У файлов есть определенный формат, то есть существуют структуры, которые осуществляют запись в файл и считывают их оттуда. Для запроса вам потребуется реализовывать язык запросов.
Простейшей базой данных можно считать двоичный файл, в которые записаны структуры.
Для начала нужно будет скачать JDK и установить программу NetBeans. В комплекте идет документация. Кроме этого, требуется освоить синтаксис языка Java с помощью какой-нибудь книги для начинающих. После этого потребуется освоить объектно-ориентированное программирование. Типы данных, переменные, условные операторы, циклы, функции, константы, аргументы функций, ВОЗВРАЩАЕМЫЕ ФУНКЦИЕЙ ЗНАЧЕНИЯ, ЛИТЕРАЛЫ, операторы, классы, наследование, перегрузка операторов, методы классов, инкапсуляция данных в классе, поля классов, паттерны или шаблоны объектно-ориентировного программирования, процедурное программирования, объектно-ориентированное проектирования, иерархия классов, связи между классами и другие базовые знания синтаксиса языка.
Вам нужно будет изучить язык SQL и теорию баз данных, теорию реляционных баз данных.
Чтобы создать лексический и синтаксический анализатор языка запросов к СУБД, вам нужно будет изучить теорию написания лексических и синтаксических анализаторов, парсеров
База данных - набор таблиц с определенными полями и связей между ними. Должен быть реализован механизм создания базы данных по метаданным.
Попробуйте изучить существующие базы данных, чтобы разобраться, какони работают - Access, Interbase, Firebird,DB2, postgresql, sun-oracle, ms sql server и др.
Для того, чтобы задавать вопросы, есть специализированный форум sql.ru
Как и другую любую программу.
Сергей Спиридонов
Как реализовать транзакцию?
и в чем проблема-то? БД - это бинарный файл. оптимизация достигается за счет seek, которая позволяет выборочно читать и писать куски файла и не читать-писать лишнее. в остальном вроде все ясно
Похожие вопросы
- Почему Android Studio написана на Java а не на С/С++?
- Помогите написать java программу нахождения максимального числа из 4-х
- C# Помогите написать генератор паролей на C# ,что бы он мог генерировать нужное кол-во паролей.
- Как написать в джава int [4] [4]
- Написать программу на языке java
- сложно ли написать программу кубик-рубик с интеллектом исскуственныи чтобы подсказывал как собирать?
- Как написать код
- Подскажите прогграмки которые можно написать новичку на языке Java
- Хочу написать программу -калькулятор .Через какой язык мне нужно писать ?/И как вообще писать ?
- напишите простую игру на языке java и распишите каждую команду для чего она нужна спасибо)