none
Создать локальную базу данных RRS feed

  • Вопрос

  • Здравствуйте. Решил создать БД, нужно, чтобы работало на любом комьютере, в т.ч. без интернета, поэтому нужно создать локальную БД. Все нормально, в студии Добавить->Локальная БД. Сделал поля, все хорошо. Один вопрос, как их связать теперь? Внешний ключ то есть как сделать? В msdn написано
    "В Обозреватель серверов/Обозреватель баз данных в узле SampleDatabase.mdf открыть контекстное меню для Схемы баз данных, а затем выберите Добавление новой схемы."
    Но я создавал 2 БД: одну по пошаговому руководству (и там у меня нету такого пункта вообще), вторую создал сам "Локальная бд и тд", но такого пункта все равно нету. Может я что-то не так делаю?



    • Изменено PsilonRus 10 октября 2012 г. 15:21
    10 октября 2012 г. 15:15

Ответы

  • Графического редактора нет, а с SQL-командами пока что все не так хорошо.
    create table dbo.Users ( id int primary key, name varchar(255) )
    go
    create table dbo.Friends ( id int primary key, id_friend int, name varchar(255), constraint fc foreign key (id_friend) references dbo.Users(id) on delete cascade )
    go


    http://www.t-sql.ru

    • Предложено в качестве ответа Andrey Filatov 12 октября 2012 г. 7:27
    • Помечено в качестве ответа Abolmasov Dmitry 19 октября 2012 г. 9:30
    11 октября 2012 г. 5:08
    Модератор
  • Связи строятся между таблицами, а не базами данных.

    Для того чтобы через Дизайнер добавить связь выберите одну из таблиц, в контектсом меню зайдите в свойства дочерней таблицы и там будет пункт Add Relations. Укажите главную таблицу, ее столбец, как будет происходить удаление данных, назовите связь и добавьте ее.


    Для связи [mail]

    • Помечено в качестве ответа Abolmasov Dmitry 19 октября 2012 г. 9:30
    12 октября 2012 г. 10:59

Все ответы

  •  привет, вопрос с внешним ключом не совсем понятен
    10 октября 2012 г. 17:25
  • Если коротко: на скриншоте видно, что у меня 2 таблицы, нужно сделать связь один-ко-многим одной таблицы с другой. Не могу разобраться как это сделать :) Графического редактора нет, а с SQL-командами пока что все не так хорошо.
    11 октября 2012 г. 3:32
  • Графического редактора нет, а с SQL-командами пока что все не так хорошо.
    create table dbo.Users ( id int primary key, name varchar(255) )
    go
    create table dbo.Friends ( id int primary key, id_friend int, name varchar(255), constraint fc foreign key (id_friend) references dbo.Users(id) on delete cascade )
    go


    http://www.t-sql.ru

    • Предложено в качестве ответа Andrey Filatov 12 октября 2012 г. 7:27
    • Помечено в качестве ответа Abolmasov Dmitry 19 октября 2012 г. 9:30
    11 октября 2012 г. 5:08
    Модератор
  • как совет - обратите внимание на сам sql а не на графические оснастки, возможностей делать связи и триггеры больше будет
    12 октября 2012 г. 7:28
  • Связи строятся между таблицами, а не базами данных.

    Для того чтобы через Дизайнер добавить связь выберите одну из таблиц, в контектсом меню зайдите в свойства дочерней таблицы и там будет пункт Add Relations. Укажите главную таблицу, ее столбец, как будет происходить удаление данных, назовите связь и добавьте ее.


    Для связи [mail]

    • Помечено в качестве ответа Abolmasov Dmitry 19 октября 2012 г. 9:30
    12 октября 2012 г. 10:59
  • Я же не как настоящий программист всё таки связи тоже делаю перетаскиванием. Делаю так:

    Меню Вид->Другие Окна-> Источники данных появляется панель с источником данных

    нажимаем добавить источник

    далее выбираем "набор данных" а не edmx модель

    Далее нажимаем все кнопки "далее"

    Потом выбираем галочкой таблицы

    и жмём везде Ок

    получаем картинку и жмём кнопку по жёлтой стрелке то бишь конструкторв

    вот в нём то можно и перетаскивать 

    после перетаскивания выползет окно с запросом отношений

    или это не то?

    17 октября 2012 г. 17:07
  • Так у вас будет связь в типизированном DataSet, но она не отразится на саму БД.

    Для связи [mail]

    19 октября 2012 г. 9:16