Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да получите клеймо за време в Java и да го съхраните в MySQL база данни?

Много по-добър начин да се справите с това е вашата база данни. Докато създавате таблицата, укажете стойността по подразбиране за TIMESTAMP колона като

CREATE TABLE posts (
    id INTEGER AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(50) NOT NULL,
    creation_date TIMESTAMP DEFAULT NOW()
);

Примерът показва CREATE TABLE за MySQL, но концепцията е същата. Докато вмъквате реда си, просто не посочвайте никаква стойност за колоната creation_date и базата данни автоматично ще го попълни вместо вас.

Като се има предвид същата таблица, ако искате да вмъкнете датата от Java, вашият код трябва да изглежда така

// Get current time
Timestamp now = new Timestamp(new Date().getTime());

try {
    // Prepare INSERT through Connection
    PreparedStatement stmt = conn.prepareStatement(
        "INSERT INTO posts (title, creation_date) VALUES (?, ?)");

    // Bind values
    stmt.setString(1, title);
    stmt.setTimestamp(2, now);

    // Insert
    stmt.executeUpdate();
} catch (SQLException e) {
    e.printStackTrace();
}

Имайте предвид, че ще трябва също да отворите DB Connection (conn обект по-горе) и го затворете, когато приключите с него. Ако не сте запознати с JDBC API, разгледайте JDBC Basics първо.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Десериализирайте чрез заявка на самото ниво на база данни

  2. Как да вмъкна изображения в blob в таблицата на mysql, използвайки само sql синтаксис (без PHP)?

  3. Как да изпълним скрипт на PowerShell в Task Scheduler?

  4. Как да създадете MySQL изглед

  5. Защо MySQL Workbench ми казва, че имам нужда от точка и запетая?