11use sqlx:: * ;
2+ use sqlx:: types:: time:: Date ;
23
34#[ derive( Debug , Clone , sqlx:: FromRow ) ]
45pub struct Employee {
56 pub id : i64 ,
67 pub email : String ,
78 pub name : String ,
8- pub dob_month : Option < i32 > ,
9- pub dob_day : Option < i32 > ,
9+ pub dob : Option < Date >
1010 // pub some_accounts: Vec<SomeAccount>,
1111}
1212
@@ -23,7 +23,7 @@ impl EmployeeDao {
2323 pub ( crate ) async fn employees ( & self ) -> Result < Vec < Employee > , Error > {
2424 sqlx:: query_as!(
2525 Employee ,
26- "SELECT id, email, name, dob_month, dob_day FROM skjera.employee"
26+ "SELECT id, email, name, dob FROM skjera.employee"
2727 )
2828 . fetch_all ( & self . pool )
2929 . await
@@ -32,7 +32,7 @@ impl EmployeeDao {
3232 pub ( crate ) async fn employee_by_id ( & self , id : i64 ) -> Result < Option < Employee > , Error > {
3333 sqlx:: query_as!(
3434 Employee ,
35- "SELECT id, email, name, dob_month, dob_day FROM skjera.employee WHERE id=$1" ,
35+ "SELECT id, email, name, dob FROM skjera.employee WHERE id=$1" ,
3636 id
3737 )
3838 . fetch_optional ( & self . pool )
@@ -42,7 +42,7 @@ impl EmployeeDao {
4242 pub ( crate ) async fn employee_by_email ( & self , email : String ) -> Result < Option < Employee > , Error > {
4343 sqlx:: query_as!(
4444 Employee ,
45- "SELECT id, email, name, dob_month, dob_day FROM skjera.employee WHERE email=$1" ,
45+ "SELECT id, email, name, dob FROM skjera.employee WHERE email=$1" ,
4646 email
4747 )
4848 . fetch_optional ( & self . pool )
@@ -52,10 +52,9 @@ impl EmployeeDao {
5252 pub ( crate ) async fn update ( & self , employee : & Employee ) -> Result < Employee , Error > {
5353 sqlx:: query_as!(
5454 Employee ,
55- "UPDATE skjera.employee SET dob_month=$1, dob_day=$2 WHERE id=$3
56- RETURNING id, email, name, dob_month, dob_day" ,
57- employee. dob_month,
58- employee. dob_day,
55+ "UPDATE skjera.employee SET dob=$1 WHERE id=$2
56+ RETURNING id, email, name, dob" ,
57+ employee. dob,
5958 employee. id,
6059 )
6160 . fetch_one ( & self . pool )
0 commit comments