Advertisement
JouJoy

Untitled

Mar 10th, 2023
1,078
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 4.60 KB | None | 0 0
  1. using System.Data;
  2. using System.Data.SqlClient;
  3.  
  4. // строка подключения к серверу базы данных
  5. string connectionString = @"Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=MyDatabase;Integrated Security=True;";
  6.  
  7. // запросы на создание таблиц
  8. string createUserTableQuery = "CREATE TABLE [User] (Id INT PRIMARY KEY IDENTITY(1,1), Name NVARCHAR(50) NOT NULL)";
  9. string createOrderTableQuery = "CREATE TABLE [Order] (Id INT PRIMARY KEY IDENTITY(1,1), UserId INT NOT NULL, ProductId INT NOT NULL, Quantity INT NOT NULL, FOREIGN KEY (UserId) REFERENCES [User](Id), FOREIGN KEY (ProductId) REFERENCES Product(Id))";
  10. string createCartTableQuery = "CREATE TABLE Cart (Id INT PRIMARY KEY IDENTITY(1,1), UserId INT NOT NULL, ProductId INT NOT NULL, Quantity INT NOT NULL, FOREIGN KEY (UserId) REFERENCES [User](Id), FOREIGN KEY (ProductId) REFERENCES Product(Id))";
  11. string createProductTableQuery = "CREATE TABLE Product (Id INT PRIMARY KEY IDENTITY(1,1), Name NVARCHAR(50) NOT NULL, Price DECIMAL(18,2) NOT NULL)";
  12.  
  13. // создание подключения к серверу базы данных
  14. using (SqlConnection connection = new SqlConnection(connectionString))
  15. {
  16.     // открытие подключения
  17.     connection.Open();
  18.  
  19.     // создание команд на основе запросов
  20.     using (SqlCommand command = new SqlCommand(createUserTableQuery, connection))
  21.     {
  22.         // выполнение запроса на создание таблицы User
  23.         command.ExecuteNonQuery();
  24.     }
  25.     using (SqlCommand command = new SqlCommand(createProductTableQuery, connection))
  26.     {
  27.         // выполнение запроса на создание таблицы Product
  28.         command.ExecuteNonQuery();
  29.     }
  30.     using (SqlCommand command = new SqlCommand(createCartTableQuery, connection))
  31.     {
  32.         // выполнение запроса на создание таблицы Cart
  33.         command.ExecuteNonQuery();
  34.     }
  35.     using (SqlCommand command = new SqlCommand(createOrderTableQuery, connection))
  36.     {
  37.         // выполнение запроса на создание таблицы Order
  38.         command.ExecuteNonQuery();
  39.     }
  40. }
  41.  
  42. /////////////////////////////////////////////////////
  43. Другой файл
  44. /////////////////////////////////////////////////
  45. using (SqlConnection connection = new SqlConnection(connectionString))
  46. {
  47.     // открытие подключения
  48. connection.Open();
  49.  
  50. // добавление записей в таблицу User
  51. using (SqlCommand command = new SqlCommand("INSERT INTO [User] (Name) VALUES ('Alice'), ('Bob'), ('Charlie')", connection))
  52. {
  53.     command.ExecuteNonQuery();
  54. }
  55.  
  56. // добавление записей в таблицу Product
  57. using (SqlCommand command = new SqlCommand("INSERT INTO Product (Name, Price) VALUES ('Product A', 10.50), ('Product B', 15.00), ('Product C', 20.00)", connection))
  58. {
  59.     command.ExecuteNonQuery();
  60. }
  61.  
  62. // добавление записей в таблицу Cart
  63. using (SqlCommand command = new SqlCommand("INSERT INTO Cart (UserId, ProductId, Quantity) VALUES (1, 1, 2), (1, 2, 1), (2, 3, 3)", connection))
  64. {
  65.     command.ExecuteNonQuery();
  66. }
  67.  
  68. // добавление записей в таблицу Order
  69. using (SqlCommand command = new SqlCommand("INSERT INTO [Order] (UserId, ProductId, Quantity) VALUES (1, 1, 1), (2, 2, 2), (3, 3, 3)", connection))
  70. {
  71.     command.ExecuteNonQuery();
  72. }
  73.  
  74.  
  75. ///////////////////////////////
  76.  
  77. В этом коде мы добавляем несколько записей в каждую таблицу.
  78.  
  79. Обратите внимание, что мы не добавляем записи с идентификаторами, так как они автоматически генерируются базой данных при добавлении новых записей. Мы также используем имена таблиц и столбцов в квадратных скобках, так как некоторые имена могут быть зарезервированы ключевыми словами SQL.
  80.  
  81. Это пример базовой реализации для создания таблиц, добавления записей и установления связей между ними. Обратите внимание, что в реальном проекте может потребоваться более сложная схема базы данных и многослойная архитектура для управления данными.
  82.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement