Guest User

Untitled

a guest
Jul 16th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.19 KB | None | 0 0
  1. package javaapplication2;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.Statement;
  5. import java.sql.ResultSet;
  6. import java.sql.DriverManager;
  7. import java.sql.SQLException;
  8. import javax.swing.JOptionPane;
  9.  
  10. public class Conexion
  11. {
  12. Connection conn = null; //Objeto para la conexion
  13. Statement stmt = null;//Objeto para ejecutar la consulta
  14. ResultSet rs = null;//Objeto para recuperar los resultados de la consulta
  15.  
  16. public Conexion()
  17. {
  18. conn = null;
  19. stmt = null;
  20. rs = null;
  21. }
  22.  
  23. //----------------------------------------------- MySQL -------------------------------------------------------
  24.  
  25. public boolean conectarMySQL(String bd, String login, String password, String host)
  26. {
  27. boolean error = false;
  28.  
  29. try{
  30. Class.forName("com.mysql.jdbc.Driver").newInstance();
  31.  
  32. }
  33. catch(Exception e)
  34. {
  35. error = true;
  36. JOptionPane.showMessageDialog(null,
  37. "No se encuentra la referencia del conector de MySQL.\n" + e.getMessage(),
  38. "Error de Conexi�n",
  39. JOptionPane.ERROR_MESSAGE);
  40. }
  41.  
  42. if(!error)
  43. {
  44. try{
  45. conn = DriverManager.getConnection("jdbc:mysql://"+host+":3306/"+bd,login,password);
  46. }
  47. catch(SQLException ex)
  48. {
  49. error = true;
  50. JOptionPane.showMessageDialog(null,
  51. "Error al tratar de conectar con la base de datos '" + bd + "'.\n\n"+
  52. "MySQL dice: " + ex.getMessage(),
  53. "Error de Conexi�n",
  54. JOptionPane.ERROR_MESSAGE);
  55. }
  56. }
  57.  
  58. return error;
  59. }
  60.  
  61.  
  62. //----------------------------------------------- PostgreSQL -------------------------------------------------------
  63.  
  64. public boolean conectarPostgres(String bd, String login, String password, String host)
  65. {
  66. boolean error = false;
  67.  
  68. try{
  69. Class.forName("org.postgresql.Driver");
  70. }
  71. catch(Exception ex)
  72. {
  73. error = true;
  74.  
  75. JOptionPane.showMessageDialog(null,
  76. "No se encuentra la referencia del conector de PostgreSQL.\n" + ex.getMessage(),
  77. "Error de Conexi�n",
  78. JOptionPane.ERROR_MESSAGE);
  79. }
  80.  
  81. if(!error)
  82. {
  83. try{
  84. conn = DriverManager.getConnection("jdbc:postgresql://"+host+":5432/"+bd, login, password);
  85. }
  86. catch(SQLException ex)
  87. {
  88. error = true;
  89. JOptionPane.showMessageDialog(null,
  90. "Error al tratar de conectar con la base de datos '" + bd + "'.\n\n"+
  91. "PostgreSQL dice: " + ex.getMessage(),
  92. "Error de Conexi�n",
  93. JOptionPane.ERROR_MESSAGE);
  94. }
  95. }
  96.  
  97. return error;
  98. }
  99.  
  100.  
  101. //----------------------------------------------- FireBird -------------------------------------------------------
  102.  
  103. public boolean conectarFB(String bd, String login, String password, String host)
  104. {
  105. boolean error = false;
  106.  
  107. try{
  108. Class.forName ("org.firebirdsql.jdbc.FBDriver");
  109. }
  110. catch(Exception ex)
  111. {
  112. error = true;
  113.  
  114. JOptionPane.showMessageDialog(null,
  115. "No se encuentra la referencia del conector de FireBird.\n"+ex.getMessage(),
  116. "Error de Conexi�n",
  117. JOptionPane.ERROR_MESSAGE);
  118. }
  119.  
  120. if(!error)
  121. {
  122. try{
  123. conn = DriverManager.getConnection("jdbc:firebirdsql:"+host+"/3050:"+bd, login, password);
  124. }
  125. catch(SQLException ex)
  126. {
  127. error = true;
  128. JOptionPane.showMessageDialog(null,
  129. "Error al tratar de conectar con la base de datos '" + bd + "'.\n\n"+
  130. "FireBird dice: " +ex.getMessage (),
  131. "Error de Conexi�n",
  132. JOptionPane.ERROR_MESSAGE);
  133. }
  134. }
  135.  
  136. return error;
  137. }
  138.  
  139.  
  140. //----------------------------------------------- Oracle -------------------------------------------------------
  141.  
  142. public boolean conectarOracle(String login, String password, String host)
  143. {
  144. boolean error = false;
  145.  
  146. try{
  147. Class.forName("oracle.jdbc.driver.OracleDriver");
  148. }
  149. catch(Exception ex)
  150. {
  151. error = true;
  152.  
  153. JOptionPane.showMessageDialog(null,
  154. "No se encuentra la referencia del conector de Oracle.\n" + ex.getMessage(),
  155. "Error de Conexi�n",
  156. JOptionPane.ERROR_MESSAGE);
  157. }
  158.  
  159. if(!error)
  160. {
  161. try{
  162. conn = DriverManager.getConnection("jdbc:oracle:thin:@"+host+":1521",
  163. login,
  164. password);
  165. /*conn = DriverManager.getConnection("jdbc:oracle:oci8:@",
  166. login,
  167. password);*/
  168. }
  169. catch(SQLException ex)
  170. {
  171. error = true;
  172. JOptionPane.showMessageDialog(null,
  173. "Error al tratar de conectar con la base de datos '" + login + "'.\n\n"+
  174. "Oracle dice: " + ex.getMessage(),
  175. "Error de Conexi�n",
  176. JOptionPane.ERROR_MESSAGE);
  177. }
  178. }
  179.  
  180. return error;
  181. }
  182.  
  183.  
  184. public void desconectar()
  185. {
  186. try{
  187. conn.close();
  188. }
  189. catch(SQLException sqle)
  190. {
  191. JOptionPane.showMessageDialog(null,
  192. "Error al tratar de cerrar la conexi�n con la base de datos.\n\n" +
  193. "SQL Error: "+ sqle.getMessage(),
  194. "Error de Conexi�n",
  195. JOptionPane.ERROR_MESSAGE);
  196. }
  197. }
  198.  
  199.  
  200. public boolean actualizar(String sql)
  201. {
  202. int resultado = 0;
  203. boolean error = false;
  204. stmt = null;//Objeto para ejecutar la consulta
  205.  
  206. if (conn != null)
  207. {
  208. try
  209. {
  210. stmt = conn.createStatement();
  211. resultado = stmt.executeUpdate(sql);
  212. stmt.close();
  213. }
  214. catch(SQLException sqle)
  215. {
  216. error = true;
  217. JOptionPane.showMessageDialog(null,
  218. "Error al tratar de actualizar la tabla.\n\n"+
  219. "SQL Error: "+ sqle.getMessage(),
  220. "Error de actualizaci�n",
  221. JOptionPane.ERROR_MESSAGE);
  222. }
  223. }
  224.  
  225. return error;
  226. }
  227.  
  228.  
  229. public ResultSet consulta(String sql)
  230. {
  231. boolean existe = false;
  232. stmt = null;//Objeto para ejecutar la consulta
  233. rs = null;//Objeto para recuperar los resultados de la consulta
  234.  
  235. if (conn != null)
  236. {
  237. try{
  238. stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
  239. rs = stmt.executeQuery(sql);
  240. }
  241. catch(SQLException sqle)
  242. {
  243. JOptionPane.showMessageDialog(null,
  244. "Error al tratar de consultar la tabla.\n\n"+
  245. "SQL Error: "+ sqle.getMessage(),
  246. "Error de consulta",
  247. JOptionPane.ERROR_MESSAGE);
  248. }
  249. }
  250.  
  251. return rs;
  252. }
  253.  
  254.  
  255. public int getSizeQuery(ResultSet rs)
  256. {
  257. int cantFilas = -1;
  258. try{
  259. rs.last(); //me voy al �ltimo
  260. cantFilas = rs.getRow(); //pillo el tama�o
  261. rs.beforeFirst(); // lo dejo donde estaba para tratarlo
  262. }
  263. catch(SQLException sqle)
  264. {
  265. JOptionPane.showMessageDialog(null,
  266. "Error al tratar de obtener la cantidad de filas resultantes de la consulta.\n\n"+
  267. "SQL Error: "+ sqle.getMessage(),
  268. "Error de consulta",
  269. JOptionPane.ERROR_MESSAGE);
  270. }
  271.  
  272. return cantFilas;
  273. }
  274.  
  275.  
  276. public void cerrarConsulta()
  277. {
  278. try{
  279. rs.close(); //cerrar el objeto que recupero los resultados de la consulta
  280. stmt.close();//cerrar el objeto ejecuto la consulta
  281. }
  282. catch(SQLException sqle)
  283. {
  284. JOptionPane.showMessageDialog(null,
  285. "Error al tratar de cerrar la consulta en la base de datos.\n\n"+
  286. "SQL Error: "+ sqle.getMessage(),
  287. "Error de Consulta",
  288. JOptionPane.ERROR_MESSAGE);
  289. }
  290. }
  291. }
Add Comment
Please, Sign In to add comment