Не работает кнопка сохранение данных веденных в datagridview windows form C# в базу данных MSSQL

Я пытаюсь сохранить данные веденные в datagriedview(windows form c#) в базу данных созданную в MSSQL. В базе данных всего есть 5 таблиц(Users, Movies, Tickets, Showtimes, Halls). Данные я пытаюсь добавить в таблицу Tickets к которой привязаны UsersID из Users, ShowtimeID из Showtimes и сам TicketID находящийся в TicketID, все вышел перечисленные ID инкрементные). Данную функцию я реализовываю в отдельной Form.cs которая называется в проекте BuyTickets

Вот код BuyTickets.cs:

//Добавление строки пустой в datagridview
        private void button1_Click(object sender, EventArgs e)
        {
            DataRow row = ds.Tables[0].NewRow(); // добавляем новую строку в DataTable
            ds.Tables[0].Rows.Add(row);
        }
//Сохранение
        private void button2_Click(object sender, EventArgs e)
        {
            using (SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.AppSettings["CinemaApp.Properties.Settings.CinemaBDConnectionString"]))
            {
                var adaptor = new SqlDataAdapter();
                adaptor.SelectCommand = new SqlCommand("SELECT * FROM [Record]", con);

                var cbr = new SqlCommandBuilder(adaptor);

                cbr.GetInsertCommand();
                cbr.GetUpdateCommand();

                try
                {
                    con.Open();

                    adaptor.Update(ds);
                    MessageBox.Show("Changes Saved", "Information");

                }
                catch (SqlException ex)
                {
                    MessageBox.Show(ex.Message, "SqlException Error");
                }
                catch (Exception x)
                {
                    MessageBox.Show(x.Message, "Exception Error");
                }

            }
        }
    }
}

Я пытался сделать напрямую через Insert но не получается, выдает ошибку

Код базы данных MSSQL:

-- Создание таблицы "Movies"
CREATE TABLE Movies (
    MovieID INT IDENTITY(1,1) PRIMARY KEY,
    Title VARCHAR(255) NOT NULL,
    Description TEXT,
    Genre VARCHAR(50),
    Duration INT,
    ReleaseDate DATE,
    PosterPath VARCHAR(255)
);

-- Создание таблицы "Halls"
CREATE TABLE Halls (
    HallID INT IDENTITY(1,1) PRIMARY KEY,
    Name VARCHAR(50) NOT NULL,
    Capacity INT
);

-- Создание таблицы "Showtime"
CREATE TABLE Showtime (
    ShowtimeID INT IDENTITY(1,1) PRIMARY KEY,
    MovieID INT NOT NULL,
    HallID INT NOT NULL,
    DateTime DATETIME NOT NULL,
    Price DECIMAL(10,2) NOT NULL,
    FOREIGN KEY (MovieID) REFERENCES Movies(MovieID),
    FOREIGN KEY (HallID) REFERENCES Halls(HallID)
);

-- Создание таблицы "Users"
CREATE TABLE Users (
    UserID INT IDENTITY(1,1) PRIMARY KEY,
    FirstName VARCHAR(50) NOT NULL,
    LastName VARCHAR(50) NOT NULL,
    Email VARCHAR(255) UNIQUE NOT NULL,
    Password VARCHAR(255) NOT NULL
);

-- Создание таблицы "Tickets"
CREATE TABLE Tickets (
    TicketID INT IDENTITY(1,1) PRIMARY KEY,
    ShowtimeID INT NOT NULL,
    UserID INT NOT NULL,
    SeatNumber INT NOT NULL,
    PurchaseDate DATETIME NOT NULL,
    FOREIGN KEY (ShowtimeID) REFERENCES Showtime(ShowtimeID),
    FOREIGN KEY (UserID) REFERENCES Users(UserID)
);

Ответы (1 шт):

Автор решения: DerSkythe

В вашем описании БД отсутствует таблица [Record] на базе которой вы пытаетесь создать команды обновления и вставки.

В качестве рекомендации советую использовать специальные библиотеки обёртки в работе с ADO.NET, типа таких или совсем минималистичные. Они позволят вам не писать кучи boiler-plate кода.

→ Ссылка