Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Data.SqlClient; //DB
- using System.Configuration; //DB
- using System.Data; //DB
- namespace EPOS_LS
- {
- class dbo
- {
- //testy
- public static bool testdbconnection(form1 form)
- {
- logsys.WriteLogEntry("Proběhne pokus o připojiení k databázi", form);
- string cstring = Properties.Settings.Default.volbydbConnectionString; //vytáhne z settings.setting connection string
- logsys.WriteLogEntry("Pro připojení se použije řetězec: \"" + cstring + "\"", form);
- SqlConnection sqlpripojeni = new SqlConnection(cstring);
- try
- {
- sqlpripojeni.Open();
- logsys.WriteLogEntry("Připojení proběhlo v pořádku", form);
- return true;
- }
- catch { logsys.WriteLogEntry("Připojení se nezdařilo!", form); return false; }
- }
- //číselníky
- public static void writebaselistlevel2(form1 form, int districtid, int regionid, string name)
- {
- string cstring = Properties.Settings.Default.volbydbConnectionString; //vytáhne z settings.setting connection string
- SqlConnection sqlpripojeni = new SqlConnection(cstring);
- SqlCommand umoznizapisid = new SqlCommand("SET IDENTITY_INSERT Districts ON", sqlpripojeni);
- SqlCommand znemoznizapisid = new SqlCommand("SET IDENTITY_INSERT Districts OFF", sqlpripojeni);
- SqlCommand pridejzaznam = new SqlCommand("insert INTO Districts ([DistrictId], [RegionId], [Name]) VALUES (@districtid,@regionid,@name)", sqlpripojeni);
- pridejzaznam.Parameters.Add(new SqlParameter("@DistrictId", districtid));
- pridejzaznam.Parameters.Add(new SqlParameter("@RegionId", regionid));
- pridejzaznam.Parameters.Add(new SqlParameter("@Name", name));
- sqlpripojeni.Open();
- logsys.WriteLogEntry("Proběhne zápis do databáze", form);
- umoznizapisid.ExecuteNonQuery();
- pridejzaznam.ExecuteNonQuery();
- znemoznizapisid.ExecuteNonQuery();
- logsys.WriteLogEntry("Zápis proběh úspěšně", form);
- sqlpripojeni.Close();
- } //použito pro číselník: http://volby.cz/pls/ps2010/ps81?xjazyk=CZ
- public static void writebaselistlevel3(form1 form, int cityid, int districtid, string name)
- {
- string cstring = Properties.Settings.Default.volbydbConnectionString; //vytáhne z settings.setting connection string
- SqlConnection sqlpripojeni = new SqlConnection(cstring);
- SqlCommand umoznizapisid = new SqlCommand("SET IDENTITY_INSERT Cities ON", sqlpripojeni);
- SqlCommand znemoznizapisid = new SqlCommand("SET IDENTITY_INSERT Cities OFF", sqlpripojeni);
- SqlCommand pridejzaznam = new SqlCommand("insert INTO Cities ([CityId], [DistrictId], [Name]) VALUES (@cityid,@districtid,@name)", sqlpripojeni);
- pridejzaznam.Parameters.Add(new SqlParameter("@CityId", cityid));
- pridejzaznam.Parameters.Add(new SqlParameter("@DistrictId", districtid));
- pridejzaznam.Parameters.Add(new SqlParameter("@Name", name));
- sqlpripojeni.Open();
- logsys.WriteLogEntry("Proběhne zápis do databáze", form);
- umoznizapisid.ExecuteNonQuery();
- pridejzaznam.ExecuteNonQuery();
- znemoznizapisid.ExecuteNonQuery();
- logsys.WriteLogEntry("Zápis proběh úspěšně", form);
- sqlpripojeni.Close();
- } //použito pro číselník: ?//TODO
- //funkce (čísleníky)
- public static int highestid()
- {
- int id = -1;
- string cstring = Properties.Settings.Default.volbydbConnectionString; //vytáhne z settings.setting connection string
- SqlConnection sqlpripojeni = new SqlConnection(cstring);
- SqlCommand gethid = new SqlCommand("Select Max(Cityid) From Cities", sqlpripojeni);
- sqlpripojeni.Open();
- id = Convert.ToInt32(gethid.ExecuteScalar());
- sqlpripojeni.Close();
- return id;
- }
- public static int getdistrictid(string okres)
- {
- string dname = okres;
- string cstring = Properties.Settings.Default.volbydbConnectionString;
- int districtid = -1;
- using (SqlConnection sqlpripojeni = new SqlConnection(cstring))
- using (SqlCommand getrid = new SqlCommand("SELECT DistrictId FROM Districts WHERE Name= @Districtname", sqlpripojeni))
- {
- getrid.Parameters.Add(new SqlParameter("@Districtname", SqlDbType.NVarChar, dname.Length)).Value = dname;
- sqlpripojeni.Open();
- districtid = Convert.ToInt32(getrid.ExecuteScalar());
- return districtid;
- }
- }
- //výsledky
- public static void zapisvysledek(int year, int districtid, int subjectid, int votes)
- {
- string cstring = Properties.Settings.Default.volbydbConnectionString; //vytáhne z settings.setting connection string
- //nejdřív si přiřadíme potřebná data (skutečné ID volební strany)
- int realsubjectid;
- using (SqlConnection sqlpripojeni = new SqlConnection(cstring))
- using (SqlCommand getrsid = new SqlCommand("SELECT SubjectId FROM Subjects WHERE SubjectNumber = @subjectnumber AND Year = @year", sqlpripojeni))
- {
- getrsid.Parameters.Add(new SqlParameter("@subjectnumber", SqlDbType.Int)).Value = subjectid;
- getrsid.Parameters.Add(new SqlParameter("@year", SqlDbType.Int)).Value = year;
- sqlpripojeni.Open();
- realsubjectid = Convert.ToInt32(getrsid.ExecuteScalar());
- }
- //zapíšeme výsledek
- SqlConnection sqlpripojeni2 = new SqlConnection(cstring);
- SqlCommand umoznizapisid = new SqlCommand("SET IDENTITY_INSERT Results ON", sqlpripojeni2);
- SqlCommand znemoznizapisid = new SqlCommand("SET IDENTITY_INSERT Results OFF", sqlpripojeni2);
- SqlCommand pridejzaznam = new SqlCommand("insert INTO Results ([DistrictId], [SubjectId], [Year], [Votes]) VALUES (@districtid,@subjectid,@year,@votes)", sqlpripojeni2);
- pridejzaznam.Parameters.Add(new SqlParameter("@districtid", districtid));
- if (subjectid == -1)
- {
- pridejzaznam.Parameters.Add(new SqlParameter("@subjectid", DBNull.Value));
- }
- else
- {
- pridejzaznam.Parameters.Add(new SqlParameter("@subjectid", realsubjectid));
- }
- pridejzaznam.Parameters.Add(new SqlParameter("@year", year));
- pridejzaznam.Parameters.Add(new SqlParameter("@votes", votes));
- sqlpripojeni2.Open();
- //umoznizapisid.ExecuteNonQuery();
- pridejzaznam.ExecuteNonQuery();
- //znemoznizapisid.ExecuteNonQuery();
- sqlpripojeni2.Close();
- }
- public static int getcityid(string name)
- {
- int cityid;
- string cstring = Properties.Settings.Default.volbydbConnectionString; //vytáhne z settings.setting connection string
- SqlConnection sqlpripojeni = new SqlConnection(cstring);
- SqlCommand getcid = new SqlCommand("Select Cityid From Cities WHERE Name=@Cityname", sqlpripojeni);
- {
- getcid.Parameters.Add(new SqlParameter("@Cityname", SqlDbType.NVarChar, name.Length)).Value = name;
- sqlpripojeni.Open();
- cityid = Convert.ToInt32(getcid.ExecuteScalar());
- if (cityid == 0)
- {
- return -1;
- }
- else
- {
- return cityid;
- }
- }
- }
- //automatické použití pouze pro okresy!!!
- public static bool zapsano(int year, form1 form) {
- string cstring = Properties.Settings.Default.volbydbConnectionString;
- int pocetzapsanych = -1;
- int cilovypocet = 0;
- switch (year) //hrubé součty, doporučuju pro příště loadovat z formu de facto udává minimální počet zapsaných hodnot pro konec procházení dat
- {
- case 1996 | 1998:
- cilovypocet = 89;
- break;
- case 2002 | 2006:
- cilovypocet = 91;
- break;
- case 2010:
- cilovypocet = 76;
- break;
- }
- using (SqlConnection sqlpripojeni = new SqlConnection(cstring))
- using (SqlCommand getcount = new SqlCommand("SELECT Count(*) FROM results WHERE Year = @year and subjectid is null", sqlpripojeni))
- {
- getcount.Parameters.Add(new SqlParameter("@year", SqlDbType.Int)).Value = year;
- sqlpripojeni.Open();
- pocetzapsanych = Convert.ToInt32(getcount.ExecuteScalar());
- }
- if (pocetzapsanych >= cilovypocet)
- {
- logsys.WriteLogEntry("Byli zjištěny a zapsány požadované hodnoty (celkem: " + pocetzapsanych.ToString() + " okresů).", form);
- return true;
- }
- else
- {
- return false;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement