Как вставить/сосчитать значения бд через gorm на golang?

Пользователь

от jett , в категории: Golang , 8 месяцев назад

Как вставить/сосчитать значения бд через gorm на golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от greyson , 7 месяцев назад

@jett 

Для работы с базой данных через Gorm в Golang, вы можете использовать методы Find и Count.


Для вставки данных в базу данных, вы можете использовать метод Create или Save. Ниже приведен пример использования Create:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
// Подключение к базе данных
db, err := gorm.Open("postgres", "user=YourUser password=YourPassword dbname=YourDB sslmode=disable")

// Проверка на ошибку подключения к базе данных
if err != nil {
    log.Fatal(err)
}

defer db.Close()

// Создание новой записи в базе данных
user := User{Name: "John", Age: 30}
db.Create(&user)


Получение значений из базы данных можно сделать с помощью метода Find. Ниже приведен пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
// Подключение к базе данных
db, err := gorm.Open("postgres", "user=YourUser password=YourPassword dbname=YourDB sslmode=disable")

// Проверка на ошибку подключения к базе данных
if err != nil {
    log.Fatal(err)
}

defer db.Close()

// Инициализация переменной для хранения результатов запроса
var users []User

// Получение всех записей из базы данных
db.Find(&users)

// Вывод результатов запроса
for _, user := range users {
    fmt.Println(user.Name, user.Age)
}


Вы также можете использовать метод Count для подсчета значений в базе данных. Ниже приведен пример:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
// Подключение к базе данных
db, err := gorm.Open("postgres", "user=YourUser password=YourPassword dbname=YourDB sslmode=disable")

// Проверка на ошибку подключения к базе данных
if err != nil {
    log.Fatal(err)
}

defer db.Close()

// Инициализация переменной для хранения количества результатов запроса
var count int64

// Подсчет количества записей в базе данных
db.Model(&User{}).Count(&count)

// Вывод количества записей
fmt.Println("Количество записей в базе данных:", count)


Убедитесь, что у вас установлена и импортирована библиотека Gorm:

1
2
3
4
import (
    "github.com/jinzhu/gorm"
    _ "github.com/jinzhu/gorm/dialects/postgres"
)


Замените YourUser, YourPassword и YourDB на свои реальные данные базы данных. Также убедитесь, что у вас есть соответствующая структура модели User, соответствующая структуре вашей базы данных.