database

package
v0.0.0-...-34c8659 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 28, 2023 License: GPL-3.0 Imports: 4 Imported by: 1

Documentation

Overview

Copyright (C) 2022-2023  ikafly144

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.

Copyright (C) 2022-2023  ikafly144

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DSN

type DSN struct {
	Host     string
	Port     string
	User     string
	Pass     string
	Name     string
	LogLevel logger.LogLevel
}

DSN構造体

type DatabaseManager

type DatabaseManager struct {
	// contains filtered or unexported fields
}

データベース接続を管理する構造体

func NewDatabase

func NewDatabase() *DatabaseManager

データベース構造体を生成

func (*DatabaseManager) Connect

func (d *DatabaseManager) Connect(dsn DSN) (err error)

データベースに接続

func (*DatabaseManager) Create

func (d *DatabaseManager) Create(data any) (err error)

テーブルを作成

func (*DatabaseManager) Delete

func (d *DatabaseManager) Delete(v any, cond ...any) (err error)

渡されたデータに一致するレコードを削除します

func (*DatabaseManager) Find

func (d *DatabaseManager) Find(v any, cond ...any) (err error)

渡されたデータ型に一致するすべてのレコードを取得します 条件にプライマリキーの値を渡すとそれに一致するレコードを取得します

プライマリキーがString型の場合、SQLインジェクションを回避するために条件は "id = ?", "217f7f2c-d648-4eed-ab09-b199a0f168f7" のようにプレースホルダを使用して下さい

その他の条件はgormのドキュメントを確認してください https://gorm.io/ja_JP/docs/query.html#%E5%8F%96%E5%BE%97%E6%9D%A1%E4%BB%B6

func (*DatabaseManager) First

func (d *DatabaseManager) First(v any, cond ...any) (err error)

渡されたデータ型に一致する最初のレコードを取得します 条件にプライマリキーの値を渡すとそれに一致するレコードを取得します

プライマリキーがString型の場合、SQLインジェクションを回避するために条件は "id = ?", "217f7f2c-d648-4eed-ab09-b199a0f168f7" のようにプレースホルダを使用して下さい

その他の条件はgormのドキュメントを確認してください https://gorm.io/ja_JP/docs/query.html#%E5%8F%96%E5%BE%97%E6%9D%A1%E4%BB%B6

func (*DatabaseManager) Save

func (d *DatabaseManager) Save(v any) (err error)

渡されたデータのプライマリキーに一致する行がある場合その行を更新します ない場合、新たに行を挿入します

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL