Advertisement
Guest User

Untitled

a guest
Feb 20th, 2016
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.93 KB | None | 0 0
  1. //Adatok betöltése fájlból
  2. string[] reszek;
  3. string[] reszek2;
  4. private void button3_Click(object sender, EventArgs e)
  5. {
  6. DialogResult dialogResult = MessageBox.Show("Biztosan elkezdi az adatok betöltését?\r\n Ez az adatok mennyiségétől és a gép erőforrásaitól függően akár több percig is eltarthat.", "Megerősítés", MessageBoxButtons.YesNo);
  7. if (dialogResult == DialogResult.Yes)
  8. {
  9. bool nincshiba = true;
  10. string tablaneve = tablanev2.Text;
  11. if (melyadatbazis2.Text == "")
  12. {
  13. MessageBox.Show("Nem adott meg adatbázist!");
  14. nincshiba = false;
  15. }
  16. if (tablaneve.Replace(" ", "").Length <= 0)
  17. {
  18. MessageBox.Show("Nem adott meg táblanevet!");
  19. nincshiba = false;
  20. }
  21. if (nincshiba == true)
  22. {
  23. bool nincshiba2 = true;
  24. int seged = 0;
  25. MySqlConnection kapcsolat2 = new MySqlConnection("server=127.0.0.1; user=root; password=; database=" + melyadatbazis2.Text + ";");
  26. kapcsolat2.Open();
  27. MySqlCommand parancs = new MySqlCommand("SHOW TABLES;", kapcsolat2);
  28. MySqlDataReader olvaso = parancs.ExecuteReader();
  29. while (olvaso.Read())
  30. {
  31. tablanevek.Add(olvaso[0].ToString());
  32. }
  33. olvaso.Close();
  34. for (int i = 0; i <= tablanevek.Count() - 1; i++)
  35. {
  36. if (tablaneve == tablanevek[i])
  37. {
  38. seged++;
  39. }
  40. }
  41. if (seged == 0)
  42. {
  43. MessageBox.Show("Ez a tábla nem létezik ezen az adatbázison belül!");
  44. nincshiba2 = false;
  45. tablanev2.Text = "";
  46. }
  47. if (txthelye.Text == "")
  48. {
  49. MessageBox.Show("Válassza ki a betölteni kívánt fájlt!");
  50. nincshiba2 = false;
  51. }
  52. tablanevek.RemoveRange(0, tablanevek.Count());
  53. if (nincshiba2 == true)
  54. {
  55. bool nincshiba3 = true;
  56. if (tabos.Checked == false && pontosvesszos.Checked == false && vesszos.Checked == false && szokozos.Checked == false)
  57. {
  58. MessageBox.Show("Nem választotta ki a tagolás típusát!");
  59. nincshiba3 = false;
  60. }
  61. if (nincshiba3 == true)
  62. {
  63. bool nincshiba4 = true;
  64. int pipalasok = 0;
  65. CheckBox[] checkboxok = new CheckBox[4];
  66. checkboxok[0] = tabos;
  67. checkboxok[1] = pontosvesszos;
  68. checkboxok[2] = vesszos;
  69. checkboxok[3] = szokozos;
  70. for (int i = 0; i < checkboxok.Length; i++)
  71. {
  72. if (checkboxok[i].Checked)
  73. {
  74. pipalasok++;
  75. }
  76. }
  77. if (pipalasok > 1)
  78. {
  79. MessageBox.Show(pipalasok.ToString() + " db tagolási opciót választott ki. Csak egyet válasszon!");
  80. nincshiba4 = false;
  81. }
  82. if (nincshiba4 == true)
  83. {
  84. bool nincshiba5 = true;
  85. StreamReader sr = new StreamReader(txthelye.Text);
  86. for (int i = 0; i <= 1; i++)
  87. {
  88. string sor = sr.ReadLine();
  89. if (sor == null)
  90. {
  91. MessageBox.Show("Az adatok betöltése sikeresen megtörtént!");
  92. txthelye.Text = null;
  93. melyadatbazis2.Text = null;
  94. tablanev2.Text = null;
  95. break;
  96. }
  97. if (tabos.Checked == true)
  98. {
  99. reszek = sor.Split('\t');
  100. }
  101. if (pontosvesszos.Checked == true)
  102. {
  103. reszek = sor.Split(';');
  104. }
  105. if (vesszos.Checked == true)
  106. {
  107. reszek = sor.Split(',');
  108. }
  109. if (szokozos.Checked == true)
  110. {
  111. reszek = sor.Split(' ');
  112. }
  113. int mennyi = reszek.Count();
  114. for (int j = 0; j <= mennyi - 1; j++)
  115. {
  116. reszek[j] = null;
  117. }
  118. while (!sr.EndOfStream)
  119. {
  120. string sor2 = sr.ReadLine();
  121. if (tabos.Checked == true)
  122. {
  123. reszek2 = sor2.Split('\t');
  124. }
  125. if (pontosvesszos.Checked == true)
  126. {
  127. reszek2 = sor.Split(';');
  128. }
  129. if (vesszos.Checked == true)
  130. {
  131. reszek2 = sor.Split(',');
  132. }
  133. if (szokozos.Checked == true)
  134. {
  135. reszek2 = sor.Split(' ');
  136. }
  137. MySqlConnection kapcsolat3 = new MySqlConnection("server=127.0.0.1; user=root; password=; database=" + melyadatbazis2.Text + ";");
  138. kapcsolat3.Open();
  139. MySqlCommand parancs2 = new MySqlCommand("SHOW COLUMNS FROM " + tablanev2.Text + ";", kapcsolat3);
  140. if (nincshiba5 == true)
  141. {
  142. MySqlDataReader olvaso2 = parancs2.ExecuteReader();
  143. while (olvaso2.Read())
  144. {
  145. mezonevek.Add(olvaso2[0].ToString());
  146. }
  147. olvaso2.Close();
  148. }
  149. if (mezonevek.Count() != reszek2.Count())
  150. {
  151. MessageBox.Show("A kialakított tábla oszlopainak száma nem egyezik a txt oszlopainak számával!\r\nTörölje a táblát, és hozza létre a megfelelő kialakítást.");
  152. mezonevek.RemoveRange(0, mezonevek.Count());
  153. txthelye.Text = null;
  154. melyadatbazis2.Text = null;
  155. tablanev2.Text = null;
  156. nincshiba5 = false;
  157. for (int j = 0; j <= mennyi - 1; j++)
  158. {
  159. reszek2[j] = null;
  160. }
  161. break;
  162. }
  163. MySqlCommand parancs3 = new MySqlCommand("INSERT INTO " + tablanev2.Text + " (" + mezonevek[0] + ") VALUES ('" + reszek2[0] + "');", kapcsolat3);
  164. parancs3.ExecuteNonQuery();
  165. for (int k = 1; k <= mezonevek.Count() - 1; k++)
  166. {
  167. MySqlCommand parancs4 = new MySqlCommand("UPDATE " + tablanev2.Text + " SET " + mezonevek[k] + "='" + reszek2[k] + "' WHERE " + mezonevek[0] + "='" + reszek2[0] + "';", kapcsolat3);
  168. parancs4.ExecuteNonQuery();
  169. }
  170. kapcsolat3.Close();
  171. mezonevek.RemoveRange(0, mezonevek.Count());
  172. }
  173. }
  174. }
  175. }
  176. }
  177. }
  178. }
  179. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement