Как я могу хранить массивы в таблице SQL - PullRequest
0 голосов
/ 28 июня 2011

Я новичок в программировании на SQL. Мой вопрос о том, как хранить значения массива в БД. Например, я хочу согласовать эскиз какого-то отдела. пусть это будет больница. и я хочу поставить этаж и место для каждого этажа и поставить кровати для каждой комнаты.

Я думал, что смогу это исправить, если использую цикл for. но я не смог.

Как я могу это исправить?

        Console.Write("enter floor numbers ");
        kat = int.Parse(Console.ReadLine());
        Console.Write("enter room numbers ");
        oda = int.Parse(Console.ReadLine());
        Console.WriteLine("enter bed numbers");
        yatak = int.Parse(Console.ReadLine());

        for ( i = 1; i <= kat; i++)
        {
            for ( j = 1; j <= oda; j++) 
            {
                for ( k = 1; k <= yatak; k++)
                {
                    Console.WriteLine("total bed numbers {0} {1} {2}", i, j, k);
                }
            }

Если я поставлю 2 для каждого, мне нужно создать 8 ячеек в БД.

1 Ответ

1 голос
/ 28 июня 2011

Если вы говорите о реляционных базах данных, вам нужно разработать таблицы так, чтобы вы могли хранить все свои объекты и отношения между ними.В случае примера, который вы предоставили

Hospital --> 1..many Floors --> 1..many Rooms --> 0..many Beds 

(делая общие предположения о количестве элементов - просто возьмите его в качестве образца)

Исходя из приведенного выше отношения, у вас будет таблица длякаждое существительное, т.е. больница, полы, комнаты и кровати.В реляционной базе данных один RECORD (не столбец) представляет одно отдельное значение объекта, представленного таблицей.Таким образом, если в больнице 10 этажей, в таблице этажей будет 10 записей.

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

Отношения между родительской и ее дочерними таблицами выполняются с использованием этого Первичного ключа и создания так называемогоограничение внешнего ключа.В принципе, если взять пример, если на 1 этаже 10 комнат, у меня будет номер этажа, т. Е. «1» в таблице комнат, чтобы можно было узнать, к какой комнате относится эта комната.

В целом, хотя этоэто не прямое решение вашего вопроса, я надеюсь, что оно поможет вам в достаточной степени ознакомиться с основными понятиями СУБД, которые вам необходимы для решения вашей проблемы.Ключевые моменты для поиска: количество элементов, первичные и внешние ключи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...