Guest User

Untitled

a guest
Jan 14th, 2018
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.24 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using MySql.Data.MySqlClient;
  6.  
  7.  
  8. namespace dbApp
  9. {
  10. class CDBInfo
  11. {
  12. private MySqlConnection spoj = null; // pro pripojeni k MySQL.
  13. private MySqlCommand prikaz = null; // pro SQL prikaz.
  14. private MySqlDataAdapter res = null; // pro cteni z dtb.
  15. private System.Data.DataTable tab = null; // ??
  16. string host, user, pass, dBase;
  17.  
  18. /// <summary>
  19. ///Ddatova tabulka ziskana aplikaci metody ApplSelect
  20. /// </summary>
  21. public System.Data.DataTable GetData
  22. {
  23. get
  24. {
  25. return tab;
  26. }
  27. }
  28. /// <summary>
  29. /// zjisti, zda je objekt pripojen k MySQL serveru
  30. /// </summary>
  31. private bool isConnect
  32. {
  33. get
  34. {
  35. return (spoj.State != System.Data.ConnectionState.Open) ? false : true;
  36. }
  37. }
  38.  
  39. int ApplVector(string sqlQuery)
  40. {
  41. prikaz.CommandText = sqlQuery;
  42. return Convert.ToInt32(prikaz.ExecuteScalar());
  43.  
  44.  
  45. }
  46. /// <summary>
  47. /// Konstruktor pro pocatecni inicializaci promennych a vnitrnich objektu
  48. /// </summary>
  49. public CDBInfo()
  50. {
  51. spoj = new MySqlConnection();
  52. prikaz = new MySqlCommand();
  53. tab = new System.Data.DataTable();
  54. host = user = pass = dBase = "";
  55. prikaz.Connection = spoj;
  56. }
  57. /// <summary>
  58. /// Nastaveni parametru pro pripojeni
  59. /// </summary>
  60. /// <param name="host">IP nebo DNS jmeno MySQL serveru</param>
  61. /// <param name="user">Uzivatelske jmeno</param>
  62. /// <param name="pass">Uzivatelske heslo</param>
  63. /// <param name="dBase">Jmeno database</param>
  64. public void Config(string host, string user, string pass, string dBase) // metoda bez navratove hodnoty se 4 vstupnimy parametry
  65. {
  66. this.host = host; // nastavi promennou host v instanci tridy na hodnotu lokalni promenne host
  67. this.user = user;
  68. this.pass = pass;
  69. this.dBase = dBase;
  70. }
  71. /// <summary>
  72. /// Pripojeni k serveru ma zaklade udaju predanych metodou void Config()
  73. /// </summary>
  74. /// <returns>true v pripade zdaru, jinak false</returns>
  75. public bool Connect() //metoda s navratovym typem bool, bez vstupniho parametru.
  76. {
  77. string cs = String.Format("Persist Security Info=False;database={0};server={1};user id={2};Password={3}",dBase,host,user,pass); // vytvori string
  78. spoj.ConnectionString = cs; //pripoji connectionstring
  79. spoj.Open(); //otevre spojeni
  80. return isConnect; //vrati jestli se podarilo pripojit k serveru
  81. }
  82. /// <summary>
  83. /// Odpojeni od MySQL serveru
  84. /// </summary>
  85. public void Disconnect() // metoda bez navratove hodnoty, bez parametru
  86. {
  87. if (isConnect) //uzavre pripjeni, pokud isConnect je true.
  88. spoj.Close();
  89. }
  90. /// <summary>
  91. /// Aplikuje vkladaci dotaz
  92. /// </summary>
  93. /// <param name="sqlQuery">sql dotaz vkladaci</param>
  94. /// <returns></returns>
  95. public int ApplInsert(string sqlQuery) // metoda s navratovou hodnotou int a vstupni string
  96. {
  97. prikaz.CommandText = sqlQuery; //nahraje SQL prikaz ze vstupni promenne sqlQuery
  98. return prikaz.ExecuteNonQuery(); // provede prikaz a vrati cislo kolik bylo provedeno zmen
  99. }
  100. /// <summary>
  101. /// Aplikuje vyberovy dotaz
  102. /// </summary>
  103. /// <param name="sqlQuery">sql dotaz</param>
  104. /// <returns></returns>
  105. public int ApplSelect(string sqlQuery) // metoda s navratovou hodnotou int a vstupni string
  106. {
  107. res = new MySqlDataAdapter(sqlQuery, spoj); // vytvori instanci tridy s paramety sqlQuery a spoj.
  108. res.Fill(tab); // naplni tabulku
  109. return tab.Rows.Count; //vrati pocet radku v tabulce
  110. }
  111.  
  112.  
  113.  
  114. }
  115. }
Add Comment
Please, Sign In to add comment