Advertisement
Guest User

Untitled

a guest
Apr 3rd, 2020
358
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 2.14 KB | None | 0 0
  1. public class DataBase
  2.     {
  3.         public static DataBase DB = new DataBase();
  4.         private NpgsqlConnection conn;
  5.         NpgsqlCommand cmd = new NpgsqlCommand();
  6.  
  7.         private const string connectionStr = "Host=localhost;Username=postgres;Password=12345678;Database=postgres";
  8.  
  9.         public void Connect(string connStr = connectionStr)
  10.         {
  11.             conn = new NpgsqlConnection(connStr);
  12.             conn.Open();
  13.             cmd.Connection = conn;
  14.         }
  15.         // language=postgres
  16.  
  17.         public void InitDB()
  18.         {
  19.             cmd.CommandText = "CREATE TABLE IF NOT EXISTS restaurants(id SERIAL PRIMARY KEY ,name VARCHAR(40))";
  20.             cmd.ExecuteNonQuery();
  21.             cmd.CommandText =
  22.                 "CREATE TABLE IF NOT EXISTS workers(id SERIAL PRIMARY KEY,first_name VARCHAR(40),last_name VARCHAR(40),coock_type VARCHAR(30))";
  23.             cmd.ExecuteNonQuery();
  24.             cmd.CommandText =
  25.                 "CREATE TABLE IF NOT EXISTS timetable(id SERIAL PRIMARY KEY,restaurant VARCHAR(40),data JSON)";
  26.             cmd.ExecuteNonQuery();
  27.  
  28.             cmd.CommandText =
  29.                 "CREATE TABLE IF NOT EXISTS rus(id SERIAL PRIMARY KEY,restaurant VARCHAR(40),date_week DATE,workers VARCHAR(40)[])";
  30.             cmd.ExecuteNonQuery();
  31.  
  32.             cmd.CommandText =
  33.                 "CREATE TABLE IF NOT EXISTS italy(id SERIAL PRIMARY KEY,restaurant VARCHAR(40),date_week DATE,workers VARCHAR(40)[])";
  34.             cmd.ExecuteNonQuery();
  35.  
  36.             cmd.CommandText =
  37.                 "CREATE TABLE IF NOT EXISTS french(id SERIAL PRIMARY KEY,restaurant VARCHAR(40),date_week DATE,workers VARCHAR(40)[])";
  38.             cmd.ExecuteNonQuery();
  39.  
  40.            
  41.         }
  42.  
  43.         public string[] GetAllRestaurants()
  44.         {
  45.             cmd.Cancel();
  46.             cmd = new NpgsqlCommand("SELECT name FROM restaurants",conn);
  47.             var reader = cmd.ExecuteReader();
  48.             var restaurants = new List<string>();
  49.             while (reader.Read())
  50.             {
  51.                 restaurants.Add(reader.GetString(0));
  52.             }
  53.  
  54.             return restaurants.ToArray();
  55.         }
  56.  
  57.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement