cpp

MySQL. Обновление и удаление записей

Для обновления и удаления записей используется уже знакомый нам метод Exec(). Изменим название рубрики с индексом 3 и удалим рубрику с индексом 4 (листинг 16.4).

Листинг 16.4. Обновление и удаление записей

package main

import (
   "database/sql"
   "fmt"
   "os"

   _ "github.com/go-sql-driver/mysql"
)

func main() {
   db, err := sql.Open("mysql", "root:@/godb")
   if err != nil {
      fmt.Fprintln(os.Stderr, err)
      return
   }
   defer db.Close()
   // Обновление записи
   result, err := db.Exec("UPDATE `rubr` SET `name_rubr`=? "+
                          "WHERE `id_rubr`=?", "Поисковые порталы", 3)
   if err != nil {
      fmt.Fprintln(os.Stderr, err)
      return
   }
   rows, err := result.RowsAffected()
   if err != nil {
      fmt.Fprintln(os.Stderr, err)
      return
   }
   fmt.Println("Изменено записей:", rows) // Изменено записей: 1
   // Удаление записи
   stmt, err := db.Prepare("DELETE FROM `rubr` WHERE `id_rubr`=?")
   if err != nil {
      fmt.Fprintln(os.Stderr, err)
      return
   }
   defer stmt.Close()
   result, err = stmt.Exec(4)
   if err != nil {
      fmt.Fprintln(os.Stderr, err)
      return
   }
   rows, err = result.RowsAffected()
   if err != nil {
      fmt.Fprintln(os.Stderr, err)
      return
   }
   fmt.Println("Удалено записей:", rows) // Удалено записей: 1
}

Учебник Go (Golang)
Учебник Go (Golang) в формате PDF

Реквизиты

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов

cpp