Вот способ подумать о том, что я не видел, чтобы кто-то еще упоминал выше:
Во-первых, помните, что for-циклы - это просто синтаксический сахар вокруг while-циклов. Например, цикл
for item in sequence:
do_something(item)
можно переписать (приблизительно) как
item = None
while sequence.hasnext():
item = sequence.next()
do_something(item)
Во-вторых, помните, что циклы while в основном просто повторяются, если-блоки! Вы всегда можете прочитать цикл while как «если это условие истинно, выполнить тело, а затем вернуться и проверить снова».
Так что, хотя / else имеет смысл: это та же структура, что и if / else, с добавленной функциональностью зацикливания до тех пор, пока условие не станет ложным, вместо простой проверки условия один раз.
И тогда for / else также имеет смысл: поскольку все циклы for являются просто синтаксическим сахаром поверх циклов while, вам просто нужно выяснить, каково неявное условное выражение базового цикла while, а затем else соответствует когда это условие становится ложным.
Тип или название базы данных не повлияют на ваш учебный процесс, поскольку вы будете работать с JDBC.
Я думаю, вы можете пойти с любым. Просто настройте его надлежащим образом на своем компьютере и подключитесь с соответствующей строкой подключения.
Java DB - это ребрендинг Apache Derby, который включен в JDK. Это нормально, и его намного проще установить, чем исходные базы данных.
Очень важно использовать хороший драйвер для базы данных! Это может решить все проблемы с подключением.
Также обратите внимание, что при переключении базы данных вам, скорее всего, также потребуется изменить свой SQL, если вы не используете такой уровень, как Hibernate или JPA.
Возможно, вы могли бы описать проблемы, которые у вас возникли при подключении к MS SQL. Конечно, это возможно, поэтому, скорее всего, что-то небольшое, что вы сделали или не сделали, мешает работе соединения.
Существует много серверов баз данных с открытым исходным кодом с драйверами JDBC. Вы можете рассмотреть вариант HSQLDB , который полностью находится в памяти, поэтому вам даже не нужно думать о настройке сервера. Вероятно, это отличный способ изучить основы SQL.
У Microsoft даже есть документация на своем веб-сайте. Ключевые слова Google: «jdbc sql server».
Все, что связано с драйвером JDBC, должно работать нормально. Я не думаю, что вы когда-нибудь найдете однозначный ответ на «лучший», это очень субъективный вопрос. Мы используем InterBase в моей работе и у меня нет проблем.
Я рекомендую MySQL или Oracle. В Oracle вы также можете получить бесплатную базу данных, однако размер базы данных ограничен.
Причина в том, что это наиболее часто используемые базы данных, и неплохо было бы получить некоторую наглядность для них. Используйте JDBC и аналогичный интерфейс, но выполняйте код поверх базы данных, и вам также нужно изучить другие вещи. Особенно, если вы работаете с более сложным приложением. Также всегда хорошо запачкать руки базовыми операциями с базой данных.
Выберите одну базу данных, которую вы можете понять, как установить. Большинство из них довольно просты и дадут вам хорошее представление о том, что такое использование базы данных. Когда у вас будет работающее приложение, попробуйте перенести его в другую базу данных. Я бы рекомендовал использовать JavaDB для первой, а затем для одной из других баз данных - Oracle, MySQL, Postgres и т. Д.
Если вы хотите остаться Java, один из вариантов - Berkeley DB Java Edition . Это то же программное обеспечение BDB, которое было разработано Sleepycat, имевшим безупречную репутацию на рынке встроенных баз данных.
Простейший способ подключения к внешней реляционной базе данных (в отличие от базы данных в памяти, такой как berkeley db) - через JDBC. Вам следует ознакомиться с JDBC, прежде чем переходить к любым другим методам хранения. Для большинства проектов вам подойдет mysql или postgresql. Не беспокойтесь о выборе одного из них, для небольших проектов различия не так важны. Пока вы используете jdbc, вы сможете переключаться между ними позже, если вам действительно нужно.
Для начала я бы загрузил mysql и следовал инструкциям по jdbc на сайте sun http://java.sun.com/docs/books/tutorial/jdbc/index.html ).
Позже вы можете решить, что вам нужно использовать инструмент объектно-реляционного сопоставления, такой как hibernate, но я бы не стал беспокоиться об этом и сейчас,
Самая большая проблема, с которой я столкнулся при использовании MSSql, связана с использованием устаревших драйверов JDBC -> ODBC Bridge; они создают наполовину бесполезную оболочку Java для вызовов ODBC, которые нестабильны и непрочны. Если вы используете JDBC ODBC Bridge, замените их новейшими драйверами JDBC от Microsoft - они работают в миллион раз лучше.