Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 13

Создание бд, если ее нет

16.02.2020, 23:42. Показов 4505. Ответов 10
Метки .net, sql (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер, столкнулся с проблемой, что моя прога работает только у меня на компе.
Бд создается в VisualStudio, через публикацию. Обращаюсь к ней с помощью EF.
Все работает, когда база данных уже существует, но если ее нет - ломается. Как развернуть бд через код?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.02.2020, 23:42
Ответы с готовыми решениями:

Создание системной переменной если её нет и удаление если есть (setenv)
Нужен своеобразный переключатель определенной системной переменной с помощью утилиты setenv. Суть его работы: Если переменная VAR...

Создание записи в бд, если ее нет в списке
Приветствую всех. Такой вопрос возник. Как можно добавить запись в бд, если ее нет в поле со списком? К примеру, у меня есть...

Создание таблицы если такой нет
Здравствуйте, я пишу базу в MS SQL. Подскажите как задать условие. Мне нужно что бы перед созданием таблицы осуществлялась проверка на то...

10
Эксперт .NET
 Аватар для Usaga
14307 / 9388 / 1355
Регистрация: 21.01.2016
Сообщений: 35,407
17.02.2020, 06:56
EZhandrs, более абстрактный вопрос надо ещё постараться, чтобы придумать.

Повангую: вы используете SQL Server LocalDB, которая ставится вместе со студией. Но вы этого момента не знаете и думаете, что "база" сама по себе создаётся в Visual Studio. Про встраиваемые СУБД типа SQLite вы слыхом не слыхивали.

Я прав?)
0
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 13
17.02.2020, 10:49  [ТС]
В решении есть проект Database, в котором описаны таблицы и начальные данные.
Базу данных создаю через публикацию в студии. Но мне надо создавать через код. Чтоб при открытии программы была проверка на наличие бд, если ее нет - создать.
Миниатюры
Создание бд, если ее нет  
0
Эксперт .NET
 Аватар для Usaga
14307 / 9388 / 1355
Регистрация: 21.01.2016
Сообщений: 35,407
17.02.2020, 17:57
Лучший ответ Сообщение было отмечено EZhandrs как решение

Решение

EZhandrs, а наличие SQL Server'а приложение тоже должно проверять? По-хорошему, приложения работающие с серверными СУБД никаких таких проверок и созданий баз производить не должно. А если вам базу с собой таскать надо, то это делается с помощью встраиваемых СУБД по типу SQLite.
1
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 13
17.02.2020, 18:01  [ТС]
Usaga, можно будет к SQLite подключить entity framework?
0
Эксперт .NET
 Аватар для Usaga
14307 / 9388 / 1355
Регистрация: 21.01.2016
Сообщений: 35,407
17.02.2020, 18:03
Лучший ответ Сообщение было отмечено EZhandrs как решение

Решение

EZhandrs, да. EF работает с SQLite.
0
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 13
17.02.2020, 23:26  [ТС]
Решил создать локальную бд и обращаться через EF.
По гайдам добавил в проект SQlite, Microsoft.EntityFrameworkCore.SQLite и Microsoft.EntityFrameworkCore.Tools.
И ничего не получается, пробовал менять версии, но не помогло.
Что можно сделать? Мне надо, чтоб программа сама создавала бд у пользователя и ее использовала.
Миниатюры
Создание бд, если ее нет  
0
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
18.02.2020, 07:12
EZhandrs, гайдов по использованию SQLite на форуме предостаточно, воспользуйтесь поиском
0
0 / 0 / 0
Регистрация: 22.08.2019
Сообщений: 13
18.02.2020, 07:48  [ТС]
Почтальон, второй день ищу, всегда какие-то подводные. Оказывается EF не поддерживает FirstCode, поэтому у меня такая ошибка. Не подскажите, что точно будет работать?
0
Эксперт .NET
 Аватар для Usaga
14307 / 9388 / 1355
Регистрация: 21.01.2016
Сообщений: 35,407
18.02.2020, 08:00
Лучший ответ Сообщение было отмечено EZhandrs как решение

Решение

Цитата Сообщение от EZhandrs Посмотреть сообщение
Оказывается EF не поддерживает FirstCode,
Что?..

Добавлено через 56 секунд
EZhandrs, EF не поддерживает создание базы в SQLite, но модель Code First поддерживается по полной программе.

Добавлено через 1 минуту
Цитата Сообщение от EZhandrs Посмотреть сообщение
Мне надо, чтоб программа сама создавала бд у пользователя и ее использовала.
Вам надо создать базу и положить её рядом с EXE вашего приложения. Не надо до такой степени страдать ерундой. Не может это сделать EF? Сделайте руками как делают сотни тысяч других разработчиков. SQLite Browser вам в помощь.
2
управление сложностью
 Аватар для Почтальон
1693 / 1306 / 259
Регистрация: 22.03.2015
Сообщений: 7,545
Записей в блоге: 5
18.02.2020, 08:01
Цитата Сообщение от EZhandrs Посмотреть сообщение
Не подскажите, что точно будет работать?
Что вы имеете ввиду ? Для SQLite создайте сначала базу, потом модель опишите, вот тема которую я поднимал - https://www.cyberforum.ru/ado-... 94773.html
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.02.2020, 08:01
Помогаю со студенческими работами здесь

Проверка существования папки и ее создание, если таковой нет
Подскажите я качаю файлы с удаленного сервера и мне надо чтобы он проверил наличие папки и если ее нет то автоматически создавал и только...

Если в папке имеется файл с расширением .ini то кнопка активируется если нет то нет
Если в папке имеется файл с расширением .ini то кнопка активируется если нет то нет))) Private Sub...

В поиске добавить код если нет такого значения в стринггрид то вывести ошибку такого значения нет, если находит то вывод
procedure TForm1.Button5Click(Sender: TObject); var i,j,k:integer;S:string; begin for i:=1 to sg.RowCount do begin if...

Вывести сообщение "Есть", если в массиве присутствует ноль и "Нет", если нуля нет
Заполните массив из 10 элементов случайными числами и вывести сообщение "Есть", если в массиве присутствует ноль и "Нет",...

Если смотреть видео в контакте, и если распахнуть видео на весь экран, то звук идет, а изображения нет(!). Если нажать на эту кнопку (на картинке об
Если смотреть видео в контакте, и если распахнуть видео на весь экран, то звук идет, а изображения нет(!!!). Если нажать на эту кнопку (на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru