private static void Main()
        {
            var set = new ServerSettings
            {
                Server   = "localhost",
                Username = "******",
                Password = "******",
                Database = "fill this"
            };

            // You can create the database if you have sufficient rights
            // DdlTools.CreateDatabase(set);

            var catalog = new Catalog();

            var columns = new List <Column>()
            {
                new Column("id", "uuid", nullable: false),
                new Column("name", "varchar", nullable: false)
            };

            var table = new Table("crm", "persons", columns).AddIndex("name", "(name)");

            catalog.AddTable(table);

            var scripts = DdlTools.GenerateUpgradeScripts(catalog, set);

            using var connection = new NpgsqlConnection(set.GetConnectionString());
            connection.Open();

            foreach (var script in scripts)
            {
                Console.WriteLine(script);

                var command = connection.CreateCommand();
                command.CommandText = script;
                command.ExecuteNonQuery();
            }
        }