PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

स्प्रिंग 3/पोस्टग्रेएसक्यूएल 8.4.9 . में पंक्ति प्रविष्टि से स्वत:जेनरेट की गई कुंजी प्राप्त करना

KeyHolder holder = new GeneratedKeyHolder();

getJdbcTemplate().update(new PreparedStatementCreator() {           

                @Override
                public PreparedStatement createPreparedStatement(Connection connection)
                        throws SQLException {
                    PreparedStatement ps = connection.prepareStatement(sql.toString(),
                        Statement.RETURN_GENERATED_KEYS); 
                    ps.setString(1, person.getUsername());
                    ps.setString(2, person.getPassword());
                    ps.setString(3, person.getEmail());
                    ps.setLong(4, person.getRole().getId());
                    return ps;
                }
            }, holder);

Long newPersonId = holder.getKey().longValue();

ध्यान दें कि Postgres के नए संस्करणों में आपको

. का उपयोग करने की आवश्यकता है
connection.prepareStatement(sql.toString(), 
    new String[] { "idcompte" /* name of your id column */ })

के बजाय

connection.prepareStatement(sql.toString(), 
    Statement.RETURN_GENERATED_KEYS);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql :मैं प्रत्येक समूह/श्रेणी से शीर्ष n प्रतिशत (%) प्रविष्टियों का चयन कैसे करूं?

  2. Postgres '\connect कमांड का JDBC प्रतिरूप क्या है?

  3. PostgreSQL डेटाबेस सुरक्षा को मजबूत करने के लिए एन्क्रिप्शन का उपयोग करना

  4. PostgreSQL 11:विभाजन पैच के लिए पैच समीक्षक

  5. SQL के साथ Postgres db 8.1 में सभी अनुक्रमों को सूचीबद्ध करें