it-swarm.asia

Bagaimana cara terbaik memberi nama bidang stempel waktu saya?

Ketika saya mencari untuk membuat beberapa bidang cap waktu (atau bidang gaya tanggal/waktu lainnya), apa cara terbaik untuk menamainya? Haruskah saya meletakkan record_timestamp?

61
garik

Anda harus menggambarkan tujuan kolom dan tidak harus tipe data. Anda dapat memasukkan tanggal/waktu/cap waktu dalam nama, tetapi Anda juga harus memasukkan artinya. Sebagai contoh

  • Tanggal Pembuatan
  • Mulai tanggal
  • StatusTime
  • Diakses
  • Diperbarui

Menambahkan Tanggal/Waktu/Stempel Waktu dan semacamnya pada akhirnya sangat berguna ketika absensi penambahan akan bertentangan dengan kolom lain. Misalnya, tabel mungkin memerlukan Status dan StatusTime.

44
Leigh Riffel

Bagaimana tentang xyz_at untuk timestamp dan xyz_on untuk bidang date - mis. start_at atau start_on?

Biasanya saya akan menghindari memasukkan tipe data dalam nama bidang - jauh lebih baik jika Anda dapat menyimpulkan apa yang perlu Anda ketahui tentang jenis dari nama bidang apa pun (bidang yang disebut description tidak mungkin menjadi integer) - tetapi bisa membedakan antara timestamp dan date sering membantu.

Saya menggunakan:

  • dibuat di
  • updated_at
18
David LeBauer

Saya melihat profil Anda dan mengatakan Anda bekerja dengan SQL Server dan dalam SQL Server TIMESTAMP tipe data tidak ada hubungannya dengan tanggal atau waktu dan digunakan untuk jenis versi yang menginjak baris. Ini sangat berguna dalam mengidentifikasi baris mana yang telah dimodifikasi dari titik waktu tertentu.

Jika Anda menggunakan TIMESTAMP maka Anda tidak perlu menentukan nama kolom dan SQL Server akan membuat kolom "TimeStamp" untuk Anda. Tetapi disarankan untuk menggunakan tipe data "ROWVERSION" dan dalam hal ini Anda harus menentukan nama kolom.

Apa nama terbaik untuk kolom seperti ini? Itu tergantung, dan saya akan menggunakan sesuatu seperti VersionStamp, RV dll ... Yang saya anggap penting BUKAN bagaimana Anda menyebutkannya tetapi apakah Anda menggunakannya secara konsisten di seluruh papan.

HTH

Ref: http://msdn.Microsoft.com/en-us/library/ms182776 (v = sql.90) .aspx

http://msdn.Microsoft.com/en-us/library/ms182776.aspx

6
Sankar Reddy

Saya menemukan bahwa menggunakan nama kolom seperti create_time, update_time dan expire_time menghasilkan keterbacaan yang lebih baik dalam hal penamaan metode dan spesifikasi (RSpec).

3
Artur Beljajev

Saya lebih suka menggunakan konvensi yang sudah ada.

Unix dan bahasa pemrograman memiliki konvensi mtime yang diterima secara luas untuk Waktu Modifikasi

Untuk waktu pembuatan,

  • BSD dan Windows menggunakan waktu lahir
  • Windows juga menggunakan Waktu Pembuatan
  • xstat menggunakan btime
  • ext4 menggunakan crtime
  • JFS dan btrfs menggunakan otime (jangan tanya, tebak "originasi").

Jadi bagi saya, saya memilih mtime, dan crtime untuk data meta.

Untuk data yang diberikan pengguna, saya pergi dengan mewakili bidang apa. Jika ini hari ulang tahun, saya hanya mengatakan user_birthday.

Sejauh presisi, untuk beberapa tampaknya menggantung mereka pada terlalu banyak presisi. Anda dapat menyimpan birthdate Anda sebagai stempel waktu (setelah semua Anda secara teknis dilahirkan pada waktu hari), tetapi spesifikasi SQL telah melakukan dari presisi yang lebih tinggi ke presisi yang lebih rendah sehingga jika Anda menggunakan database yang layak ini seharusnya tidak menjadi masalah. Di aplikasi Anda sendiri, Anda selalu dapat memotong bila diperlukan. Artinya, saya tidak akan pernah pergi birthday_date.

2
Evan Carroll

Untuk menjaga konsistensi di seluruh nama kolom, saya sarankan Anda untuk sintaks berikut:

dateCreated
dateUpdated
dateAccessed
dateStarted
date...
1
Andreas

Saya lebih suka menggunakan awalan DT untuk prangko tanggal. Sebagai contoh: DTOpened, DTClosed, DTLastAccessed. Ini memungkinkan saya daftar semua DTxxxx untuk referensi cepat dari semua prangko tanggal dalam tabel yang diberikan.

Saya bekerja untuk Texas Instruments, dan pada sistem mereka mereka menggunakan xxxx _dttm

1
Barry McQuery

Seperti yang disarankan oleh @Evan Carroll, gunakan standar yang ada kecuali Anda memiliki alasan kuat untuk menghentikan polanya.

Jika ini adalah sesuatu yang baru maka Anda dapat mengikuti jawaban apa pun yang paling cocok untuk Anda.

Saya menggunakan * _on dan * _by karena ini membantu saya untuk tetap konsisten untuk kapan dan siapa baris:

- created_on & created_by
- updated_on & updated_by
- deleted_on & deleted_by -- soft delete
- approved_on & approved_by
1
Shaunak Sontakke

Saya akan menggunakan awalan yang bermakna dan _TSMP sebagai akhiran mis. CREATION_TSMP atau LAST_UPDATE_TSMP

0
Paddy Carroll