GoDasturchi
Create Records

Create Records

Yozuv qo'shish

db.Create(&record) — struct qiymatini yangi qator sifatida jadvalga qo'shadi. Chaqiruvdan keyin, agar ID avtomatik hosil bo'lgan bo'lsa (masalan auto-increment), u struct'ning o'zida avtomatik to'ldiriladi.

example.go
user := User{Name: "Aziz", Age: 21, Email: "aziz@example.com"}

result := db.Create(&user)
if result.Error != nil {
	log.Println("xato:", result.Error)
	return
}

fmt.Println(user.ID)             // GORM avtomatik to'ldirdi!
fmt.Println(result.RowsAffected) // 1

// Bir nechtasini birdan qo'shish:
users := []User{
	{Name: "Bobur", Age: 25},
	{Name: "Malika", Age: 30},
}
db.Create(&users)

db.Createga struct'ning pointeri (&user) beriladi — chunki GORM natijani (masalan yangi IDni) to'g'ridan-to'g'ri o'sha struct'ga yozib qo'yadi. result.Error — amal muvaffaqiyatli bo'ldimi (bu "database/sql" kursida ko'rgan xatoni tekshirish naqshining GORM'dagi ko'rinishi). Slice berish orqali bir nechta yozuvni bitta so'rovda qo'shish mumkin — bu ko'p yozuv qo'shishda ancha samarali.

Key Takeaway

Key Takeaway:

db.Create(&record) yangi qator qo'shadi va avtomatik hosil bo'lgan qiymatlarni (masalan ID) struct'ga qaytarib yozadi.

NEXT UP

Read Records

Create Records

Yozuv qo'shish

db.Create(&record) — struct qiymatini yangi qator sifatida jadvalga qo'shadi. Chaqiruvdan keyin, agar ID avtomatik hosil bo'lgan bo'lsa (masalan auto-increment), u struct'ning o'zida avtomatik to'ldiriladi.

example.go
user := User{Name: "Aziz", Age: 21, Email: "aziz@example.com"}

result := db.Create(&user)
if result.Error != nil {
	log.Println("xato:", result.Error)
	return
}

fmt.Println(user.ID)             // GORM avtomatik to'ldirdi!
fmt.Println(result.RowsAffected) // 1

// Bir nechtasini birdan qo'shish:
users := []User{
	{Name: "Bobur", Age: 25},
	{Name: "Malika", Age: 30},
}
db.Create(&users)

db.Createga struct'ning pointeri (&user) beriladi — chunki GORM natijani (masalan yangi IDni) to'g'ridan-to'g'ri o'sha struct'ga yozib qo'yadi. result.Error — amal muvaffaqiyatli bo'ldimi (bu "database/sql" kursida ko'rgan xatoni tekshirish naqshining GORM'dagi ko'rinishi). Slice berish orqali bir nechta yozuvni bitta so'rovda qo'shish mumkin — bu ko'p yozuv qo'shishda ancha samarali.

Key Takeaway

Key Takeaway:

db.Create(&record) yangi qator qo'shadi va avtomatik hosil bo'lgan qiymatlarni (masalan ID) struct'ga qaytarib yozadi.

NEXT UP

Read Records