Advertisement
Guest User

Untitled

a guest
Apr 12th, 2017
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.58 KB | None | 0 0
  1. CREATE TABLE PAIS
  2. (
  3. IdPais INTEGER NOT NULL,
  4. NomePais VARCHAR(60) NOT NULL,
  5. SiglaPais VARCHAR(3) NOT NULL,
  6. StatusPais CHAR(1) NOT NULL
  7. );
  8.  
  9. ALTER TABLE PAIS ADD
  10. (
  11. CONSTRAINT PAIS PRIMARY KEY (IdPais)
  12. );
  13.  
  14. CREATE SEQUENCE SEQ_ID_PAIS
  15. MINVALUE 1
  16. MAXVALUE 9999999999
  17. START WITH 1
  18. INCREMENT BY 1
  19. NOCACHE
  20. CYCLE;
  21.  
  22. CREATE OR REPLACE TRIGGER TRG_ID_PAIS BEFORE INSERT ON PAIS FOR EACH ROW BEGIN <<COLUMN_SEQUENCES>> BEGIN IF :NEW.IDPAIS IS NULL THEN SELECT SEQ_ID_PAIS.NEXTVAL INTO :NEW.IDPAIS FROM DUAL; END IF; END COLUMN_SEQUENCES; END;
  23.  
  24. INSERT INTO PAIS VALUES(1, 'Brasil', 'BRA', 'A');
  25. INSERT INTO PAIS VALUES(2, 'Argentina', 'ARG', 'A');
  26. INSERT INTO PAIS VALUES(3, 'Canadá', 'CAN', 'A');
  27. INSERT INTO PAIS VALUES(4, 'China', 'CHN', 'A');
  28. INSERT INTO PAIS VALUES(5, 'Dinamarca', 'DEN', 'A');
  29. INSERT INTO PAIS VALUES(6, 'Estados Unidos', 'EUA', 'A');
  30. INSERT INTO PAIS VALUES(7, 'França', 'FRA', 'A');
  31. INSERT INTO PAIS VALUES(8, 'Paraguai', 'PAR', 'A');
  32.  
  33. package bd;
  34.  
  35. import java.sql.Connection;
  36. import java.sql.DriverManager;
  37. import java.sql.PreparedStatement;
  38. import java.sql.ResultSet;
  39. import java.sql.SQLException;
  40. import java.sql.Statement;
  41. import java.util.ArrayList;
  42. import java.util.List;
  43. import javax.swing.JOptionPane;
  44.  
  45. public class ConexaoOracle
  46. {
  47. public static Connection conexao;
  48.  
  49. public static Connection getConexao()
  50. {
  51. try
  52. {
  53. if (conexao == null)
  54. {
  55.  
  56. Class.forName("oracle.jdbc.driver.OracleDriver");
  57. conexao = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:xe","system","Gustavo");
  58. }
  59. return conexao;
  60. }
  61.  
  62. catch (ClassNotFoundException e)
  63. {
  64. JOptionPane.showMessageDialog(null, "Não foi possível encontrar o driver de acesso ao banco de dados!");
  65. e.printStackTrace();
  66. return null;
  67. }
  68.  
  69. catch (SQLException e)
  70. {
  71. JOptionPane.showMessageDialog(null, "Não foi possível conectar com o banco de dados!");
  72. e.printStackTrace();
  73. return null;
  74. }
  75. }
  76.  
  77. public static Integer pegaSequences(String sequence)
  78. {
  79. try
  80. {
  81. Statement st = ConexaoOracle.getConexao().createStatement();
  82. ResultSet rs = st.executeQuery("SELECT " + sequence + ".NEXTVAL FROM DUAL");
  83. rs.next();
  84. return rs.getInt(1);
  85. }
  86.  
  87. catch (Exception e)
  88. {
  89. e.printStackTrace();
  90. JOptionPane.showMessageDialog(null, "Não foi possível obter o SEQUENCE!");
  91. return null;
  92. }
  93. }
  94. }
  95.  
  96. private final String SQL_INCLUIR = "INSERT INTO PAIS VALUES (?, ?, ?, ?)";
  97. private static final String SEQUENCE = "SEQ_ID_PAIS";
  98.  
  99. public boolean incluir()
  100. {
  101. try
  102. {
  103. PreparedStatement ps = ConexaoOracle.getConexao().prepareStatement(SQL_INCLUIR);
  104. pojoPais.setIdPais(ConexaoOracle.pegaSequences(SEQUENCE));
  105. //pojoPais.setIdPais(ConexaoFireBird.pegaGenerator(GENERATOR));
  106. ps.setInt(1, pojoPais.getIdPais());
  107. ps.setString(2, pojoPais.getNomePais());
  108. ps.setString(3, pojoPais.getSiglaPais());
  109. ps.setString(4, (pojoPais.getStatusPais() ? "A" : "I")); // Ativo/Inativo.
  110. ps.executeUpdate();//Atualiza no BD.
  111. return true;
  112. }
  113.  
  114. catch (SQLException e)
  115. {
  116. e.printStackTrace();
  117. JOptionPane.showMessageDialog(null, "Não foi possível incluir o PAÍS!");
  118. return false;
  119. }
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement