CMGDK r49-rc2
|
00001 / * C o p y r i g h t ( C ) 2 0 0 4 M y S Q L A B 00002 00003 T h i s p r o g r a m i s f r e e s o f t w a r e ; y o u c a n r e d i s t r i b u t e i t a n d / o r m o d i f y 00004 00005 i t u n d e r t h e t e r m s o f t h e G N U G e n e r a l P u b l i c L i c e n s e a s p u b l i s h e d b y 00006 00007 t h e F r e e S o f t w a r e F o u n d a t i o n ; v e r s i o n 2 o f t h e L i c e n s e . 00008 00009 T h i s p r o g r a m i s d i s t r i b u t e d i n t h e h o p e t h a t i t w i l l b e u s e f u l , 00010 00011 b u t W I T H O U T A N Y W A R R A N T Y ; w i t h o u t e v e n t h e i m p l i e d w a r r a n t y o f 00012 00013 M E R C H A N T A B I L I T Y o r F I T N E S S F O R A P A R T I C U L A R P U R P O S E . S e e t h e 00014 00015 G N U G e n e r a l P u b l i c L i c e n s e f o r m o r e d e t a i l s . 00016 00017 Y o u s h o u l d h a v e r e c e i v e d a c o p y o f t h e G N U G e n e r a l P u b l i c L i c e n s e 00018 00019 a l o n g w i t h t h i s p r o g r a m ; i f n o t , w r i t e t o t h e F r e e S o f t w a r e 00020 00021 F o u n d a t i o n , I n c . , 5 9 T e m p l e P l a c e , S u i t e 3 3 0 , B o s t o n , M A 0 2 1 1 1 - 1 3 0 7 U S A * / 00022 00023 # i f n d e f _ m y s q l _ t i m e _ h _ 00024 00025 # d e f i n e _ m y s q l _ t i m e _ h _ 00026 00027 / * 00028 00029 T i m e d e c l a r a t i o n s s h a r e d b e t w e e n t h e s e r v e r a n d c l i e n t A P I : 00030 00031 y o u s h o u l d n o t a d d a n y t h i n g t o t h i s h e a d e r u n l e s s i t ' s u s e d 00032 00033 ( a n d h e n c e s h o u l d b e v i s i b l e ) i n m y s q l . h . 00034 00035 I f y o u ' r e l o o k i n g f o r a p l a c e t o a d d n e w t i m e - r e l a t e d d e c l a r a t i o n , 00036 00037 i t ' s m o s t l i k e l y m y _ t i m e . h . S e e a l s o " C A P I H a n d l i n g o f D a t e 00038 00039 a n d T i m e V a l u e s " c h a p t e r i n d o c u m e n t a t i o n . 00040 00041 * / 00042 00043 e n u m e n u m _ m y s q l _ t i m e s t a m p _ t y p e 00044 00045 { 00046 00047 M Y S Q L _ T I M E S T A M P _ N O N E = - 2 , M Y S Q L _ T I M E S T A M P _ E R R O R = - 1 , 00048 00049 M Y S Q L _ T I M E S T A M P _ D A T E = 0 , M Y S Q L _ T I M E S T A M P _ D A T E T I M E = 1 , M Y S Q L _ T I M E S T A M P _ T I M E = 2 00050 00051 } ; 00052 00053 00054 00055 / * 00056 00057 S t r u c t u r e w h i c h i s u s e d t o r e p r e s e n t d a t e t i m e v a l u e s i n s i d e M y S Q L . 00058 00059 W e a s s u m e t h a t v a l u e s i n t h i s s t r u c t u r e a r e n o r m a l i z e d , i . e . y e a r < = 9 9 9 9 , 00060 00061 m o n t h < = 1 2 , d a y < = 3 1 , h o u r < = 2 3 , h o u r < = 5 9 , h o u r < = 5 9 . M a n y f u n c t i o n s 00062 00063 i n s e r v e r s u c h a s m y _ s y s t e m _ g m t _ s e c ( ) o r m a k e _ t i m e ( ) f a m i l y o f f u n c t i o n s 00064 00065 r e l y o n t h i s ( a c t u a l l y n o w u s a g e o f m a k e _ * ( ) f a m i l y r e l i e s o n a b i t w e a k e r 00066 00067 r e s t r i c t i o n ) . A l s o f u n c t i o n s t h a t p r o d u c e M Y S Q L _ T I M E a s r e s u l t e n s u r e t h i s . 00068 00069 T h e r e i s o n e e x c e p t i o n t o t h i s r u l e t h o u g h i f t h i s s t r u c t u r e h o l d s t i m e 00070 00071 v a l u e ( t i m e _ t y p e = = M Y S Q L _ T I M E S T A M P _ T I M E ) d a y s a n d h o u r m e m b e r c a n h o l d 00072 00073 b i g g e r v a l u e s . 00074 00075 * / 00076 00077 t y p e d e f s t r u c t s t _ m y s q l _ t i m e 00078 00079 { 00080 00081 u n s i g n e d i n t y e a r , m o n t h , d a y , h o u r , m i n u t e , s e c o n d ; 00082 00083 u n s i g n e d l o n g s e c o n d _ p a r t ; 00084 00085 m y _ b o o l n e g ; 00086 00087 e n u m e n u m _ m y s q l _ t i m e s t a m p _ t y p e t i m e _ t y p e ; 00088 00089 } M Y S Q L _ T I M E ; 00090 00091 # e n d i f / * _ m y s q l _ t i m e _ h _ * / 00092 00093