Migration Oracle page : la différence entre now() et sysdate

Texte d'origine : oracle sql fonctionne maintenant, différence entre now() de postgresql et sysdate_Li d'Oracle Blog-CSDN de daxin

now() de postgresql est l'heure de début de la transaction actuelle.

La date système dans Oracle change constamment dans la transaction.

Résumer:

- now() de postgresql est l'heure de début de la transaction actuelle. Si vous appelez now(), vous obtiendrez l'heure de début de la transaction au lieu de l'heure système actuelle.

- Le sysdate d'Oracle est d'obtenir l'heure actuelle, lorsque sysdate est appelé, c'est l'heure.

Supplément : L'utilisation de la fonction now() dans mysql, ainsi que le sysdate d'oracle, peut enterrer le puits

L'utilisation de la fonction now() dans mysql, et le sysdate d'oracle

A la demande, si le système ajoute l'heure de l'opération en cours, alors une opération très simple consiste à écrire la fonction now() directement dans la position correspondante de ce champ lors de l'écriture de sql, ce qui permettra d'économiser beaucoup de code, notamment en Lorsque vous écrivez avec jdbc, vous pouvez écrire moins de code sur les espaces réservés, mais il y a une prémisse implicite que la base de données et le serveur sont sur la même machine. S'ils ne sont pas sur la même machine, alors écrire comme ça est un piège. Je pense que les gens qui n'ont aucune expérience et ne sont pas tombés dans la fosse écriront comme ceci. Par exemple, j'écrirai comme ça si je suis paresseux. Lorsque ce temps est utilisé à des fins de comparaison ou comme base d'un jugement de logique métier, cette fosse est apparue

Lz a rencontré le problème de positionnement lorsqu'il faisait des affaires. À ce moment-là, le serveur se trouvait sur l'ordinateur de Lz et la base de données se trouvait à l'extrémité distante. En raison des besoins de l'entreprise, l'heure a été ajustée à un point dans le futur, puis a commencé pour fonctionner, mais après une semaine autour, j'ai accidentellement découvert que l'heure utilisée par une table est en fait l'heure réelle actuelle. J'avais une telle supposition qu'un programmeur aurait dû utiliser le champ sysdate. Bien que je ne l'aie pas trouvé évidemment, il devrait être utilisé, sinon il ne serait pas récupéré. Il est temps pour de vrai. Surtout pour certains projets qui nécessitent un débogage à distance, chers collègues, en ce qui concerne les normes de codage, je pense que cela devrait être ajouté aux normes de codage de sql.

lz n'a pas compris et a fait une telle chose auparavant, maintenant je ne peux que rappeler à tout le monde de ne pas le faire, puis changer le code que j'ai écrit récemment.

Il est recommandé d'utiliser java pour générer un nouvel objet de temps. Si vous utilisez jdbc pour l'épeler directement en sql, vous n'avez pas besoin d'utiliser des espaces réservés.

Ce qui précède est une expérience personnelle, j'espère que cela pourra vous donner une référence et j'espère que vous pourrez davantage soutenir Server House. S'il y a des erreurs ou des choses qui n'ont pas été pleinement prises en compte, veuillez me le faire savoir.

Lien d'origine : https://liming.blog.csdn.net/article/details/73485092

Je suppose que tu aimes

Origine blog.csdn.net/lan861698789/article/details/125127041
conseillé
Classement