Chèn dấu thời gian Mysql

Dấu thời gian của MySQL có thể được định nghĩa là kiểu dữ liệu MySQL dựa trên thời gian có chứa ngày với thời gian cùng nhau. Dấu thời gian hỗ trợ Giờ phối hợp quốc tế (UTC) cho MySQL. Dấu thời gian được viết ở định dạng được đặt ở 19 ký tự. YYYY-MM-DD HH. MM. SS. Các giá trị cho loại dữ liệu Dấu thời gian nằm trong khoảng từ ngày 1 tháng 1 năm 1970 UTC đến ngày 19 tháng 1 năm 2038 UTC. Ở đây, UTC đề cập đến một thang thời gian phối hợp, được bảo tồn bởi Cục Quốc tế des Poids et Mesures (BIPM). UTC cũng được công nhận bởi “Giờ Z” hoặc “Giờ Zulu”. Khi một giá trị cho Dấu thời gian được chèn vào bảng trong MySQL, thì trước khi chèn nó, MySQL sẽ chuyển đổi ở dạng UTC được đặt thành kết nối múi giờ của bạn để sau đó giá trị có thể được lưu trữ trong bảng cơ sở dữ liệu. Trong khi đó, nếu chúng tôi thực hiện một truy vấn để truy cập Dấu thời gian thì máy chủ MySQL sẽ thay đổi giá trị Dấu thời gian UTC đảo ngược thành kết nối múi giờ tương ứng. Điều này có thể cần thiết để xem giá trị Dấu thời gian giúp biết ở định dạng múi giờ. Hãy nhớ rằng loại chuyển đổi này chỉ diễn ra trong loại dữ liệu Dấu thời gian chứ không phải đối với những loại khác như loại dữ liệu DATETIME MySQL. Theo mặc định, kết nối múi giờ giống với múi giờ o máy chủ MySQL. Giả sử khi bạn kết nối với MySQL Server, bạn có thể áp dụng múi giờ khác nhau

cú pháp

Hàm Timestamp() biểu thị kiểu dữ liệu trả về giá trị dựa trên DateTime

Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn

Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác

Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án)

Chèn dấu thời gian Mysql
Chèn dấu thời gian Mysql
Chèn dấu thời gian Mysql
Chèn dấu thời gian Mysql

Chèn dấu thời gian Mysql
Chèn dấu thời gian Mysql
Chèn dấu thời gian Mysql
Chèn dấu thời gian Mysql

Giá bán
Xem các khóa học

Hơn 360 khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 7 (85.614 xếp hạng)

Cú pháp cơ bản của Dấu thời gian như sau

Timestamp (exp, time)

Ở đây, hai tham số đại diện cho hai giá trị này trong cú pháp

  • exp là bắt buộc biểu thị biểu thức có giá trị ngày hoặc DateTime
  • thời gian là một giá trị thời gian tùy chọn để thêm vào biểu thức tham số đầu tiên trong cú pháp trên

Vì chúng ta đã biết, hàm Dấu thời gian của MySQL có giá trị DateTime, nếu có hai tham số thì;

Ghi chú. Đối với bài viết này, chúng tôi đã sử dụng máy chủ PostgreSQL

Kiểu dữ liệu Dấu thời gian hoạt động như thế nào trong MySQL?

Dựa trên cú pháp hàm Dấu thời gian, hai đối số của hàm Dấu thời gian bắt nguồn từ một giá trị DateTime và được sử dụng với mệnh đề SELECT để tìm nạp kết quả như bên dưới

SELECT TIMESTAMP (“2020-03-26”, “10:15:11”);

Ở đây, hàm chuyển đổi biểu thức thành giá trị DateTime và bên cạnh đó, khoảng thời gian cũng được thêm vào giá trị. Kết quả sẽ đơn giản ở định dạng Dấu thời gian như

Chèn dấu thời gian Mysql

Khi bạn muốn tìm nạp bất kỳ giá trị MySQL Dấu thời gian nào được nhập bởi người dùng ở một vị trí khác có múi giờ không giống nhau, thì giá trị sẽ được truy xuất sẽ không giống với giá trị hiện có trong cơ sở dữ liệu. Nếu bạn không thay đổi múi giờ, thì giá trị MySQL Dấu thời gian tương tự sẽ được tìm nạp mà bạn đã lưu trữ. Điều này xảy ra do múi giờ không giống với múi giờ được sử dụng để chuyển đổi. Nhưng đối với kiểu dữ liệu DATETIME thì giá trị không thay đổi

Các ví dụ để triển khai Dấu thời gian của MySQL

Hãy để chúng tôi giải thích từ khóa Dấu thời gian và cách nó xử lý các giá trị bằng các ví dụ sau

Ví dụ 1

Múi giờ Dấu thời gian của MySQL. Giả sử, chúng tôi đã tạo một bảng có tên demo_timestamp trong đó chúng tôi đã bao gồm một cột có kiểu dữ liệu Dấu thời gian có tên là asts1

Mã số

CREATE TABLE demo_timestamp(ts1 TIMESTAMP);

Bây giờ, chúng ta hãy nhập giá trị MySQL Dấu thời gian vào bảng demo_timestamp

Mã số

INSERT INTO demo_timestamp(ts1) VALUES('2020-03-27 03:20:01');

Sau khi chèn giá trị Dấu thời gian này, bạn có thể xem giá trị cột bằng cách sử dụng câu lệnh SQL CHỌN trên bảng

Mã số

SELECT ts1 FROM demo_timestamp;

đầu ra

Chèn dấu thời gian Mysql

Ví dụ #2

Tự động khởi tạo và cập nhật Cột dấu thời gian

Hãy để chúng tôi nghiên cứu minh họa sau đây, nơi chúng tôi đã tạo một bảng'Employee'

Mã số

CREATE TABLE Employee(Empid INT PRIMARY KEY, EmpName VARCHAR (255) NOT NULL, Creation_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP);

Trong bảng được tạo, chúng tôi đã đặt một cột Creation_time đề cập đến loại dữ liệu Dấu thời gian và giá trị mặc định của nó biểu thị CURRENT_TIMESTAMP

Sau đó, chúng ta hãy chèn một bản ghi mới vào bảng Nhân viên nhưng chúng ta sẽ không chỉ định bất kỳ giá trị nào cho cột Dấu thời gian. e. Thời gian sáng tạo

Mã số

INSERT INTO Employee (Empid,EmpName) VALUES ('1','ABC');

Bây giờ, chúng ta sẽ xem bản ghi bảng và xem giá trị nào được lưu trữ trong cột Dấu thời gian bằng cách sử dụng truy vấn SQL sau

Mã số

SELECT * FROM Employee;

đầu ra

Chèn dấu thời gian Mysql

Chúng tôi thấy rằng cột đã được khởi tạo tự động theo dấu thời gian hiện tại khi hàng được chèn vào. Tính năng đặc trưng này được gọi là Khởi tạo tự động

Ví dụ #3

chúng tôi sẽ thêm cột tiếp theo‘Update_time’ trong bảng

Mã số

________số 8_______

Từ khóa ON UPDATE ở đây là mệnh đề sẽ cập nhật thời gian khi có bất kỳ sửa đổi gì trong giá trị cột

Giả sử, chèn một bản ghi mới

Mã số

INSERT INTO Employee (Empid,EmpName) VALUES('2','XYZ');

Bây giờ, xem bản ghi

Mã số

SELECT * FROM Employee;

đầu ra

Chèn dấu thời gian Mysql

Ví dụ #4

Tại thời điểm này, cả hai giá trị Dấu thời gian đều giống nhau nhưng khi chúng tôi thực hiện bất kỳ cập nhật nào như

Mã số

SELECT TIMESTAMP (“2020-03-26”, “10:15:11”);1

Một lần nữa, chọn tất cả từ bảng để xem các thay đổi

Mã số

SELECT * FROM Employee;

đầu ra

Chèn dấu thời gian Mysql

Giải trình. Bạn có thể thấy rằng giá trị của cột Update_time_at đã thay đổi thành ngày và giờ khi giá trị cột được cập nhật trong khi Creation_time đặt thành không thay đổi hiển thị giá trị thời gian chèn. Tính năng này được gọi là Cập nhật tự động trong MySQL cho chức năng DẤU THỜI GIAN. Hãy nhớ rằng nếu chúng ta cập nhật lại với cùng một giá trị thì giá trị Dấu thời gian cho cột Update_time sẽ không thay đổi

Ưu điểm của việc sử dụng Dấu thời gian trong MySQL

  • Hàm dấu thời gian thêm dữ liệu và cột thời gian vào bảng để quản lý tất cả các hoạt động liên quan đến việc chèn, xóa hoặc cập nhật bất kỳ giá trị nào đóng vai trò là Nhật ký
  • Dấu thời gian duy trì Phối hợp thời gian quốc tế (UTC) để MySQL lưu trữ dữ liệu và giá trị thời gian cùng nhau và có thể thay đổi theo cài đặt vùng của máy khách
  • Dấu thời gian chỉ cần dung lượng lưu trữ 4 byte và chứa phần giây phân số theo sau trong tối đa micro giây i. e. 6 chữ số chính xác

Phần kết luận

Dấu thời gian trong MySQL trả về giá trị bao gồm cả phần ngày và giờ. Nó giúp biết ngày và giờ khi bất kỳ giá trị nào được chèn vào bảng hoặc bất kỳ thay đổi nào được thực hiện. Cột kiểu dữ liệu Dấu thời gian của MySQL có tính năng khởi tạo và cập nhật tự động. Khi đó hàm CURRENT_TIMESTAMP ta lấy được ngày giờ hiện tại của bất kỳ hệ điều hành nào của máy chủ mà SQL đang thực thi

Bài viết được đề xuất

Đây là hướng dẫn về Dấu thời gian của MySQL. Ở đây chúng tôi thảo luận về phần giới thiệu về Dấu thời gian của MySQL, cú pháp, Cách thức hoạt động, các ví dụ và ưu điểm. Bạn cũng có thể xem qua các bài viết liên quan khác của chúng tôi để tìm hiểu thêm –

Làm cách nào để chèn ngày và giờ trong MySQL?

Phương pháp đơn giản nhất để chèn ngày giờ hiện tại vào MySQL là sử dụng hàm now() . Khi bạn gọi hàm, nó sẽ trả về ngày và giờ hiện tại theo múi giờ được định cấu hình của hệ thống dưới dạng chuỗi. Giá trị được trả về từ hàm now() là YYYY-MM-DD cho ngày và HH-MM-SS-UU cho bản ghi thời gian.

Làm cách nào để chèn dấu thời gian hiện tại vào truy vấn SQL?

Có một cách rất đơn giản mà chúng ta có thể sử dụng để nắm bắt dấu thời gian của các hàng đã chèn trong bảng. .
Nắm bắt dấu thời gian của các hàng đã chèn trong bảng với ràng buộc MẶC ĐỊNH trong SQL Server
cú pháp
Thí dụ
Hãy tạo một bảng có tên là 'GeekTab'
Hãy chèn một vài giá trị trong bảng

Làm cách nào để định dạng dấu thời gian trong MySQL?

Ví dụ. Để chuyển đổi datetime sang định dạng – dd. mm. yyyy, bạn có thể sử dụng truy vấn sau. SELECT DATE_FORMAT('2020-03-15 07. 10. 56. 123', '%d. %m. %Y');

Làm cách nào để viết dấu thời gian trong SQL?

Cú pháp và tham số. Cú pháp cơ bản của kiểu dữ liệu “dấu thời gian” trong SQL như sau. Dấu thời gian 'date_expression time_expression'; Biểu thức dữ liệu dấu thời gian hợp lệ bao gồm ngày và giờ, theo sau là BC hoặc AD tùy chọn.