From 70040b4b31482b8fba2c350777e1d7eee4bf2caa Mon Sep 17 00:00:00 2001 From: rongo-base64 Date: Sat, 14 Jun 2025 21:15:35 +0300 Subject: [PATCH] Impl insertClient, updateClientLogin, deleteClient --- demo.db | Bin 57344 -> 57344 bytes main.go | 36 +++++++++++++++++++++++++++++------- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/demo.db b/demo.db index 6eb509060ace5181940bd65ddc8ed4889ac6d222..44bc69f29bbafdb65cc4f3a8cfaa28b80d88e51f 100644 GIT binary patch delta 217 zcmZoTz}#?vd4e<}&qNt#Rvreuv{xHb8sym%85kJ28XY#jmS+=S{ImI!zEA?Q64R~8 z>=Wj)FfcHgZC)`UhF?IDxtD=8iItgU9g8dTGv?mO91F}unR%JEF@-YzW1Pik$Z&xn z8fX%0#^(41dd!=bOfX~Ge0ZrNmxUyoJp;E3*Ilk$E?&+ZoIV^MIc9NKvOi+4V;5!H z!e-CEoZp@A245+k0PhxFSDwo}IXrCK%h{ARHojz)l4TH;6%`F}4Gsa}ct6*07<+T{ Nf(+Kp%Xder003&cK9K+b delta 146 zcmV;D0B!$(zypB51CSd529X>?1qJ{va-gwffFB2M0000Afkw0I9|jNs`m^#c5?}); z0Hl)#ke#!Qqc#Gw+L9^_1StSp0FxA;HXQ|E1o;Gs1Std5184&c0=5EG0saA+0Wkp3 z09ydFKelKEv%{r93K|OwrvMM94@VBz4s{L?4YUnK4ATs33EvO AivR!s diff --git a/main.go b/main.go index 7a6508d..4a1f2da 100644 --- a/main.go +++ b/main.go @@ -32,10 +32,10 @@ func main() { // добавление нового клиента newClient := Client{ - FIO: "", // укажите ФИО - Login: "", // укажите логин - Birthday: "", // укажите день рождения - Email: "", // укажите почту + FIO: "Иванов Иван Иванович", // укажите ФИО + Login: "ivanov1988", // укажите логин + Birthday: "19880428", // укажите день рождения + Email: "ivanov1988@yandex.ru", // укажите почту } id, err := insertClient(db, newClient) @@ -53,7 +53,7 @@ func main() { fmt.Println(client) // обновление логина клиента - newLogin := "" // укажите новый логин + newLogin := "ivanov1988new" // укажите новый логин err = updateClientLogin(db, newLogin, id) if err != nil { fmt.Println(err) @@ -84,18 +84,40 @@ func main() { } func insertClient(db *sql.DB, client Client) (int64, error) { - // напишите здесь код для добавления новой записи в таблицу clients - return 0, nil // вместо 0 верните идентификатор добавленной записи + res, err := db.Exec("INSERT INTO clients (fio, login, birthday, email) VALUES (:fio, :login, :birthday, :email)", + sql.Named("fio", client.FIO), + sql.Named("login", client.Login), + sql.Named("birthday", client.Birthday), + sql.Named("email", client.Email)) + if err != nil { + return 0, err + } + lastInserted, err := res.LastInsertId() + if err != nil { + return 0, err + } + return lastInserted, nil } func updateClientLogin(db *sql.DB, login string, id int64) error { // напишите здесь код для обновления поля login в таблице clients у записи с заданным id + _, err := db.Exec("UPDATE clients SET login = :login WHERE id = :id", + sql.Named("id", id), + sql.Named("login", login)) + if err != nil { + return err + } return nil } func deleteClient(db *sql.DB, id int64) error { // напишите здесь код для удаления записи из таблицы clients по заданному id + _, err := db.Exec("DELETE FROM clients WHERE id = :id", + sql.Named("id", id)) + if err != nil { + return err + } return nil }