private static void CreateDatabase(string competitionName)
        {
            string databaseDirectory = ImagePaths.GetDatabaseDirectory(competitionName);

            Directory.CreateDirectory(databaseDirectory);

            string databaseFilePath = ImagePaths.GetDatabaseFile(competitionName);

            if (File.Exists(databaseFilePath) == false)
            {
                //SQLiteConnection.CreateFile(databaseFilePath);

                SQLiteConnection dbConnection = new SQLiteConnection("DataSource=" + databaseFilePath + ";Version=3;");
                dbConnection.Open();

                String        createScoresTableCommandString = "CREATE TABLE IF NOT EXISTS scores (timestamp TEXT, name VARCHAR(255) NOT NULL, author VARCHAR(100), title VARCHAR(100), score NUMBER(2) NOT NULL)";
                SQLiteCommand createScoresTableCommand       = new SQLiteCommand(createScoresTableCommandString, dbConnection);
                createScoresTableCommand.ExecuteNonQuery();

                String        createHeldImagesTableCommandString = "CREATE TABLE IF NOT EXISTS held_images (timestamp TEXT, name VARCHAR(255) NOT NULL)";
                SQLiteCommand createHeldImagesTableCommand       = new SQLiteCommand(createHeldImagesTableCommandString, dbConnection);
                createHeldImagesTableCommand.ExecuteNonQuery();

                String        createWinnersTableCommandString = "CREATE TABLE IF NOT EXISTS winners (timestamp TEXT, name VARCHAR(255) NOT NULL, position VARCHAR(2) NOT NULL)";
                SQLiteCommand createWinnersTableCommand       = new SQLiteCommand(createWinnersTableCommandString, dbConnection);
                createWinnersTableCommand.ExecuteNonQuery();

                dbConnection.Close();
            }
        }
Exemplo n.º 2
0
 internal static string GetDatabaseFile(string competitionName)
 {
     return(ImagePaths.GetDatabaseDirectory(competitionName) + "/" + competitionName + ".sqlite");
 }