예제 #1
0
        //public PgDocumentStore(string connectionStringName, string tableName) {
        //  this.Database = new PgDbCore(connectionStringName);
        //  _keyProperty = this.GetKeyProperty();
        //  this.KeyIsAutoIncrementing = this.DecideKeyIsAutoIncrementing();
        //  TryLoadData();
        //}

        //public PgDocumentStore(string connectionStringName) {
        //  this.Database = new PgDbCore(connectionStringName);
        //  _keyProperty = this.GetKeyProperty();
        //  this.KeyIsAutoIncrementing = this.DecideKeyIsAutoIncrementing();
        //  TryLoadData();
        //}

        public DocumentStoreBase(IDbCore dbCore)
        {
            this.Database = dbCore;
            _keyProperty  = this.GetKeyProperty();
            this.KeyIsAutoIncrementing = this.DecideKeyIsAutoIncrementing();
            TryLoadData();
        }
예제 #2
0
        public static void DropCreateAll(IDbCore _db)
        {
            const string SQL_TRACKS_TABLE = ""
                                            + "CREATE TABLE track ( track_id SERIAL PRIMARY KEY, album_id INTEGER NOT NULL, name text NOT NULL, composer TEXT );";
            const string SQL_ARTISTS_TABLE = ""
                                             + "CREATE TABLE artist ( artist_id SERIAL PRIMARY KEY NOT NULL, name text NOT NULL );";
            const string SQL_ALBUMS_TABLE = ""
                                            + "CREATE TABLE album ( album_id SERIAL PRIMARY KEY NOT NULL, artist_id integer NOT NULL, title text NOT NULL );";

            _db.TryDropTable("artist");
            _db.TryDropTable("album");
            _db.TryDropTable("track");
            _db.TryDropTable("artistdocuments");

            int result = _db.TransactDDL(SQL_ARTISTS_TABLE + SQL_ALBUMS_TABLE + SQL_TRACKS_TABLE);
        }
예제 #3
0
        public static void DropCreateAll(IDbCore _db)
        {
            const string SQL_TRACKS_TABLE = ""
                                            + "CREATE TABLE Track ( TrackId INTEGER PRIMARY KEY AUTOINCREMENT, AlbumId INT NOT NULL, Name text NOT NULL, Composer TEXT );";
            const string SQL_ARTISTS_TABLE = ""
                                             + "CREATE TABLE Artist ( ArtistId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, Name TEXT NOT NULL );";
            const string SQL_ALBUMS_TABLE = ""
                                            + "CREATE TABLE Album ( AlbumId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, ArtistId INT NOT NULL, Title text NOT NULL );";

            _db.TryDropTable("Artist");
            _db.TryDropTable("Album");
            _db.TryDropTable("Track");
            _db.TryDropTable("artistdocuments");

            int result = _db.TransactDDL(SQL_ARTISTS_TABLE + SQL_ALBUMS_TABLE + SQL_TRACKS_TABLE);
        }
예제 #4
0
 public UnitOfWork(IDbCore dbCore)
 {
     Database = dbCore;
 }
예제 #5
0
    public static void DropCreateAll(IDbCore _db) {
      const string SQL_TRACKS_TABLE = ""
        + "CREATE TABLE track ( track_id SERIAL PRIMARY KEY, album_id INTEGER NOT NULL, name text NOT NULL, composer TEXT );";
      const string SQL_ARTISTS_TABLE = ""
        + "CREATE TABLE artist ( artist_id SERIAL PRIMARY KEY NOT NULL, name text NOT NULL );";
      const string SQL_ALBUMS_TABLE = ""
        + "CREATE TABLE album ( album_id SERIAL PRIMARY KEY NOT NULL, artist_id integer NOT NULL, title text NOT NULL );";

      _db.TryDropTable("artist");
      _db.TryDropTable("album");
      _db.TryDropTable("track");
      _db.TryDropTable("artistdocuments");

      int result = _db.TransactDDL(SQL_ARTISTS_TABLE + SQL_ALBUMS_TABLE + SQL_TRACKS_TABLE);
    }
예제 #6
0
    public static void DropCreateAll(IDbCore _db) {
      const string SQL_TRACKS_TABLE = ""
        + "CREATE TABLE Track ( TrackId INTEGER PRIMARY KEY AUTOINCREMENT, AlbumId INT NOT NULL, Name text NOT NULL, Composer TEXT );";
      const string SQL_ARTISTS_TABLE = ""
        + "CREATE TABLE Artist ( ArtistId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, Name TEXT NOT NULL );";
      const string SQL_ALBUMS_TABLE = ""
        + "CREATE TABLE Album ( AlbumId INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, ArtistId INT NOT NULL, Title text NOT NULL );";

      _db.TryDropTable("Artist");
      _db.TryDropTable("Album");
      _db.TryDropTable("Track");
      _db.TryDropTable("artistdocuments");

      int result = _db.TransactDDL(SQL_ARTISTS_TABLE + SQL_ALBUMS_TABLE + SQL_TRACKS_TABLE);
    }
예제 #7
0
 public DrinkDataProvider(IDbCore dbCore)
 {
     db = new DbEntity <DrinkEntity>(dbCore);
 }
예제 #8
0
 public PgRelationalStore(IDbCore dbCore)
     : base(dbCore)
 {
 }
예제 #9
0
    public UnitOfWork(IDbCore dbCore) {
      Database = dbCore;

    }
예제 #10
0
 public RelationalStoreBase(IDbCore dbCore)
 {
     this.Database     = dbCore;
     this.TableMapping = this.Database.getTableMappingFor <T>();
 }
예제 #11
0
 public SqliteRelationalStore(IDbCore dbCore)
     : base(dbCore)
 {
 }
예제 #12
0
 public PartyDataProvider(IDbCore dbCore)
 {
     db = new DbEntity <PartyEntity>(dbCore);
 }
예제 #13
0
 public PartyGuestDataProvider(IDbCore dbCore)
 {
     db          = new DbEntity <PartyGuestEntity>(dbCore);
     db_ByPerson = new DbEntity <PartyGuestByPersonEntity>(dbCore);
 }
예제 #14
0
 public Operations(IDbConnection connection, IDbCore core)
 {
     dbCon  = connection;
     dbCore = core;
 }
예제 #15
0
 public DbEntity(IDbCore dbCore)
 {
     _entity = new TDbEntity();
     _dbCore = dbCore;
 }
예제 #16
0
        public static void Main(string[] args)
        {
            Console.Clear();

            Console.Write(
                "\u001b[32m                             .                ,,\n" +
                "\u001b[32m                          ;,.                  '0d.\n" +
                "\u001b[32m                        oc                       oWd                      \u001b[31m" +
                @"________/\\\\\\\\\___/\\\\\\\\\\\_________/\\\\\\\\\___/\\\\____________/\\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                      ;X.                         'WN'                    \u001b[31m" +
                @" _____/\\\////////___\/////\\\///_______/\\\////////___\/\\\\\\________/\\\\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                     oMo                           cMM:                   \u001b[31m" +
                @"  ___/\\\/________________\/\\\________/\\\/____________\/\\\//\\\____/\\\//\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                    ;MM.                           .MMM;                  \u001b[31m" +
                @"   __/\\\__________________\/\\\_______/\\\______________\/\\\\///\\\/\\\/_\/\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                    NMM                             WMMW                  \u001b[31m" +
                @"    _\/\\\__________________\/\\\______\/\\\______________\/\\\__\///\\\/___\/\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                   'MMM                             MMMM;                 \u001b[31m" +
                @"     _\//\\\_________________\/\\\______\//\\\_____________\/\\\____\///_____\/\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                   ,MMM:                           dMMMM:                 \u001b[31m" +
                @"      __\///\\\_______________\/\\\_______\///\\\___________\/\\\_____________\/\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                   .MMMW.                         :MMMMM.                 \u001b[31m" +
                @"       ____\////\\\\\\\\\___/\\\\\\\\\\\_____\////\\\\\\\\\__\/\\\_____________\/\\\_" +
                "\n\u001b[0m" +
                "\u001b[32m                    XMMMW:    .:xKNMMMMMMN0d,    lMMMMMd                  \u001b[31m" +
                @"        _______\/////////___\///////////_________\/////////___\///______________\///__" +
                "\n\u001b[0m" +
                "\u001b[32m                    :MMMMMK; cWMNkl:;;;:lxKMXc .0MMMMMO                   \u001b[37;1m          MARECHAI\u001b[0m\n" +
                "\u001b[32m                   ..KMMMMMMNo,.             ,OMMMMMMW:,.                 \u001b[37;1m          Master repository of computing history artifacts information\u001b[0m\n" +
                "\u001b[32m            .;d0NMMMMMMMMMMMMMMW0d:'    .;lOWMMMMMMMMMMMMMXkl.            \u001b[37;1m          Version \u001b[0m\u001b[33m{0}\u001b[37;1m-\u001b[0m\u001b[31m{1}\u001b[0m\n" +
                "\u001b[32m          :KMMMMMMMMMMMMMMMMMMMMMMMMc  WMMMMMMMMMMMMMMMMMMMMMMWk'\u001b[0m\n" +
                "\u001b[32m        ;NMMMMWX0kkkkO0XMMMMMMMMMMM0'  dNMMMMMMMMMMW0xl:;,;:oOWMMX;       \u001b[37;1m          Running under \u001b[35;1m{2}\u001b[37;1m, \u001b[35m{3}-bit\u001b[37;1m in \u001b[35m{4}-bit\u001b[37;1m mode.\u001b[0m\n" +
                "\u001b[32m       xMMWk:.           .c0MMMMMW'      OMMMMMM0c'..          .oNMO      \u001b[37;1m          Using \u001b[33;1m{5}\u001b[37;1m version \u001b[31;1m{6}\u001b[0m\n" +
                "\u001b[32m      OMNc            .MNc   oWMMk       'WMMNl. .MMK             ;KX.\u001b[0m\n" +
                "\u001b[32m     xMO               WMN     ;  .,    ,  ':    ,MMx               lK\u001b[0m\n" +
                "\u001b[32m    ,Md                cMMl     .XMMMWWMMMO      XMW.                :\u001b[0m\n" +
                "\u001b[32m    Ok                  xMMl     XMMMMMMMMc     0MW,\u001b[0m\n" +
                "\u001b[32m    0                    oMM0'   lMMMMMMMM.   :NMN'\u001b[0m\n" +
                "\u001b[32m    .                     .0MMKl ;MMMMMMMM  oNMWd\u001b[0m\n" +
                "\u001b[32m                            .dNW cMMMMMMMM, XKl\u001b[0m\n" +
                "\u001b[32m                                 0MMMMMMMMK\u001b[0m\n" +
                "\u001b[32m                                ;MMMMMMMMMMO                              \u001b[37;1m          Proudly presented to you by:\u001b[0m\n" +
                "\u001b[32m                               'WMMMMKxMMMMM0                             \u001b[34;1m          Natalia Portillo\u001b[0m\n" +
                "\u001b[32m                              oMMMMNc  :WMMMMN:\u001b[0m\n" +
                "\u001b[32m                           .dWMMM0;      dWMMMMXl.                        \u001b[37;1m          Thanks to all contributors, collaborators, translators, donators and friends.\u001b[0m\n" +
                "\u001b[32m               .......,cd0WMMNk:           c0MMMMMWKkolc:clodc'\u001b[0m\n" +
                "\u001b[32m                 .';loddol:'.                 ':oxkkOkkxoc,.\u001b[0m\n" +
                "\u001b[0m\n", Version.GetVersion(),
                      #if DEBUG
                "DEBUG"
                      #else
                "RELEASE"
                      #endif
                , DetectOS.GetPlatformName(DetectOS.GetRealPlatformID()),
                Environment.Is64BitOperatingSystem ? 64 : 32, Environment.Is64BitProcess ? 64 : 32,
                DetectOS.IsMono ? "Mono" : ".NET Core",
                DetectOS.IsMono ? Version.GetMonoVersion() : Version.GetNetCoreVersion());

            Console.WriteLine("\u001b[31;1mUpdating MySQL database without Entity Framework if it exists...\u001b[0m");
            Database = new Mysql();

            IConfigurationBuilder builder       = new ConfigurationBuilder().AddJsonFile("appsettings.json");
            IConfigurationRoot    configuration = builder.Build();
            string connectionString             = configuration.GetConnectionString("DefaultConnection");

            if (connectionString is null)
            {
                Console.WriteLine("\u001b[31;1mCould not find a correct connection string...\u001b[0m");
            }
            else
            {
                string   server = null, user = null, database = null, password = null;
                ushort   port   = 0;
                string[] pieces = connectionString.Split(";");

                foreach (string piece in pieces)
                {
                    if (piece.StartsWith("server=", StringComparison.Ordinal))
                    {
                        server = piece.Substring(7);
                    }
                    else if (piece.StartsWith("user="******"password="******"database=", StringComparison.Ordinal))
                    {
                        database = piece.Substring(9);
                    }
                    else if (piece.StartsWith("port=", StringComparison.Ordinal))
                    {
                        string portString = piece.Substring(5);

                        ushort.TryParse(portString, out port);
                    }
                }

                if (server is null ||
                    user is null ||
                    database is null ||
                    password is null ||
                    port == 0)
                {
                    Console.WriteLine("\u001b[31;1mCould not find a correct connection string...\u001b[0m");
                }
 public PersonDataProvider(IDbCore dbCore)
 {
     db = new DbEntity <PersonEntity>(dbCore);
 }