Hướng dẫn how do i change the default date format in mysql? - làm cách nào để thay đổi định dạng ngày mặc định trong mysql?

Chúng tôi đang sử dụng cơ sở dữ liệu MySQL với FileMaker. Có vẻ như khi FileMaker đang đọc các bảng MySQL, nó sẽ chỉ chấp nhận ngày ở định dạng m/d/y.

Có cách nào tôi có thể nhận cơ sở dữ liệu MySQL của chúng tôi để thay đổi định dạng mặc định của nó thành M/D/Y thay vì Yyyy-MM-DD không?

Tôi biết tôi có thể sử dụng hàm Date_format () trên các truy vấn chọn riêng lẻ nhưng tôi muốn xem liệu tôi có thể thay đổi định dạng mặc định không.

hỏi ngày 29 tháng 10 năm 2010 lúc 14:39Oct 29, 2010 at 14:39

Hướng dẫn how do i change the default date format in mysql? - làm cách nào để thay đổi định dạng ngày mặc định trong mysql?

Matt McCormickmatt McCormickMatt McCormick

12.9k22 Huy hiệu vàng74 Huy hiệu bạc83 Huy hiệu đồng22 gold badges74 silver badges83 bronze badges

1

Đọc thêm một chút Tôi thấy bạn có thể thay đổi định dạng cho một trường cụ thể nhưng không được khuyến khích.

Bạn không thể thay đổi định dạng lưu trữ

Bạn có thể đặt allow_invalid_dates và lưu ngày với định dạng bạn muốn nhưng tôi thực sự không khuyên bạn nên điều đó.

Nếu trường của bạn không được lập chỉ mục thì không có vấn đề trên Call DATE_FORMAT() khi bạn đang thực hiện chọn, thì vấn đề duy nhất là nếu bạn cần chọn trường cho trường đó trong trường hợp chỉ mục sẽ không được sử dụng vì bạn đang gọi hàm.

Hướng dẫn how do i change the default date format in mysql? - làm cách nào để thay đổi định dạng ngày mặc định trong mysql?

Dharman ♦

28.4K21 Huy hiệu vàng75 Huy hiệu bạc129 Huy hiệu đồng21 gold badges75 silver badges129 bronze badges

Đã trả lời ngày 29 tháng 10 năm 2010 lúc 14:49Oct 29, 2010 at 14:49

Gabriel Sosagabriel SosaGabriel Sosa

7,8584 Huy hiệu vàng38 Huy hiệu bạc48 Huy hiệu đồng4 gold badges38 silver badges48 bronze badges

2

Bí quyết là không thay đổi định dạng trong MySQL (dù sao nó cũng không được lưu trữ dưới dạng chuỗi), mà là để chỉ định định dạng bạn muốn khi bạn truy vấn nó.

Điều này có thể đạt được bằng cách sử dụng một cái gì đó như thế này:

SELECT date_format(mydatefield,'%m/%d/%Y') as mydatefield FROM mytable

Hướng dẫn chính thức của MySQL cho điều này là tại đây: http://dev.mysql.com/doc/refman/5.1/en/date-and-tin-pves.html#function_date-format

Nhân tiện, ngoài chủ đề nhưng tôi cảm thấy tôi nên đề cập đến nó: Tôi luôn khuyên bạn nên sử dụng MM/DD/YYYY làm định dạng ngày-bạn sẽ nhầm lẫn bất cứ ai từ bên ngoài Hoa Kỳ; Hầu như mọi quốc gia khác trên thế giới thường sẽ sử dụng DD/mm/yyyy. Nhưng cả hai định dạng đó đều mơ hồ - ý bạn là ngày nào khi bạn nói "12/05/2010"? Có lẽ là một cái khác với tôi, nhưng không thể thực sự biết bạn dự định làm tròn con đường nào.

Nếu bạn có ý định sử dụng ngày A cho mục đích hiển thị, tôi luôn hiển thị tháng dưới dạng từ hoặc viết tắt, vì điều này sẽ loại bỏ bất kỳ sự mơ hồ nào. Đối với mục đích đầu vào, hãy sử dụng điều khiển lịch để tránh bất kỳ sự nhầm lẫn có thể xảy ra.

Đã trả lời ngày 29 tháng 10 năm 2010 lúc 15:00Oct 29, 2010 at 15:00

Tôi không nghĩ bạn có thể, xem thay đổi định dạng ngày của MySQL.

Có các biến hệ thống được gọi là date_formatdatetime_format có vẻ đầy hứa hẹn, nhưng nếu bạn cố gắng đặt chúng, bạn sẽ gặp lỗi và tài liệu nói rằng chúng 'không được sử dụng'.

Đã trả lời ngày 29 tháng 10 năm 2010 lúc 14:50Oct 29, 2010 at 14:50

Hướng dẫn how do i change the default date format in mysql? - làm cách nào để thay đổi định dạng ngày mặc định trong mysql?

Martin Claytonmartin Claytonmartin clayton

75.4K31 Huy hiệu vàng215 Huy hiệu bạc198 Huy hiệu đồng31 gold badges215 silver badges198 bronze badges

Tôi sử dụng cài đặt WAMP và thường chỉ cần tạo một cột INT(10) và sau đó lưu trữ các ngày của tôi như thế này:

UPDATE  `test` SET  `dateandtime` = DATE_FORMAT( NOW(),  '%y%m%d%H%i' ) WHERE `id` =1234;

Điều này lưu trữ 2013-11-22 12:45:09 dưới dạng một số như 1322111245. Vâng, nó có thể được coi là "không đúng" nhưng tôi không quan tâm. Nó hoạt động, và tôi có thể sắp xếp dễ dàng và định dạng trên máy khách theo bất kỳ cách nào tôi thích.

Điều này rõ ràng không được đề xuất nếu bạn dự kiến ​​sẽ chạy bất kỳ chức năng ngày nào khác, nhưng đối với tôi, tôi thường chỉ muốn biết bản cập nhật cuối cùng của bản ghi và sắp xếp kết quả được đặt theo ngày.

Đã trả lời ngày 4 tháng 3 năm 2013 lúc 23:45Mar 4, 2013 at 23:45

Tim timtim

3.7355 huy hiệu vàng34 Huy hiệu bạc38 Huy hiệu đồng5 gold badges34 silver badges38 bronze badges

SELECT COUNT(field_name) AS count_it FROM table_name WHERE DATE_FORMAT(date_field,'%Y-%m-%d') = DATE_FORMAT(CURDATE(), '%Y-%m-%d')-- to count records for today.

Đã trả lời ngày 16 tháng 5 năm 2013 lúc 4:33May 16, 2013 at 4:33

Hướng dẫn how do i change the default date format in mysql? - làm cách nào để thay đổi định dạng ngày mặc định trong mysql?

Romancha Kcromancha KCRomancha KC

1.4771 Huy hiệu vàng13 Huy hiệu bạc12 Huy hiệu đồng1 gold badge13 silver badges12 bronze badges

SELECT DATE_FORMAT(NAME_COLUMN, "%d/%l/%Y %H:%i:%s") AS 'NAME'

Đã trả lời ngày 16 tháng 5 năm 2017 lúc 14:32May 16, 2017 at 14:32

Hướng dẫn how do i change the default date format in mysql? - làm cách nào để thay đổi định dạng ngày mặc định trong mysql?

2

Làm cách nào để thay đổi định dạng ngày trong mysql?

Trong cơ sở dữ liệu MySQL, hàm date_format () cho phép bạn hiển thị dữ liệu ngày và giờ ở định dạng đã thay đổi ...
%A - Tên tuần được viết tắt ..
%Y-năm, trong 4 chữ số ..
%M - tên đầy đủ của tháng ..
%E - Ngày của tháng (từ 1 - 31) ..
%H-giờ (từ 00-23) ..
%i-phút (từ 00-59) ..
%s-giây (từ 00-59) ..

Định dạng ngày MySQL mặc định là gì?

MySQL lấy và hiển thị các giá trị ngày ở định dạng 'yyyy-mm-dd'.Phạm vi được hỗ trợ là '1000-01-01' đến '9999-12-31'.YYYY-MM-DD ' format. The supported range is '1000-01-01' to '9999-12-31' .

Làm thế nào để tôi chèn ngày trong yyyy

Bạn có thể sử dụng str_to_date để chuyển đổi chuỗi ngày sang định dạng ngày nội bộ của MySQL để chèn.use str_to_date to convert a date string to MySQL's internal date format for inserting.

Làm cách nào để thay đổi ngày và giờ mặc định trong mysql?

Mặc định phụ thuộc vào việc mệnh đề mặc định chỉ định current_timestamp hay giá trị không đổi.Với current_timestamp, mặc định là dấu thời gian hiện tại.Tạo Bảng T1 (TS Timestamp mặc định current_timestamp, dt datetime mặc định current_timestamp);Với một hằng số, mặc định là giá trị đã cho.CREATE TABLE t1 ( ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP, dt DATETIME DEFAULT CURRENT_TIMESTAMP ); With a constant, the default is the given value.