Comment développer un système simple de rappel d'horaires en utilisant MySQL et le langage Go
Avec le rythme rapide de la vie moderne et un travail chargé, nous ignorons souvent les choses et les rendez-vous importants. Afin d'aider les gens à mieux gérer leur temps, nous pouvons utiliser le langage MySQL et Go pour développer un système simple de rappel d'horaire. Cet article explique comment stocker les informations de planification via une base de données MySQL et écrire le code associé à l'aide du langage Go.
Tout d'abord, nous devons concevoir une base de données pour stocker les informations sur les horaires. On peut créer une table nommée "events", contenant les champs suivants :
Vous pouvez utiliser l'instruction SQL suivante pour créer cette table :
CREATE TABLE events ( id INT AUTO_INCREMENT PRIMARY KEY, title VARCHAR(255) NOT NULL, date DATE NOT NULL, time TIME NOT NULL, description TEXT );
Ensuite, nous utilisons le langage Go pour écrire du code Connectez-vous à la base de données MySQL et implémentez les fonctions associées. Tout d'abord, nous devons importer les packages nécessaires :
package main import ( "database/sql" "fmt" "log" _ "github.com/go-sql-driver/mysql" )
Ensuite, nous définissons une structure d'événements pour stocker les informations sur les événements récupérées de la base de données :
type Event struct { ID int Title string Date string Time string Description string }
Ensuite, nous écrivons une fonction pour obtenir tous les événements de la base de données :
func getEvents(db *sql.DB) ([]Event, error) { rows, err := db.Query("SELECT * FROM events") if err != nil { return nil, err } defer rows.Close() var events []Event for rows.Next() { var event Event err := rows.Scan(&event.ID, &event.Title, &event.Date, &event.Time, &event.Description) if err != nil { return nil, err } events = append(events, event) } if err = rows.Err(); err != nil { return nil, err } return events, nil }
Ensuite, nous écrivons une fonction pour créer de nouveaux événements :
func createEvent(db *sql.DB, event Event) (int64, error) { stmt, err := db.Prepare("INSERT INTO events (title, date, time, description) VALUES (?, ?, ?, ?)") if err != nil { return -1, err } defer stmt.Close() result, err := stmt.Exec(event.Title, event.Date, event.Time, event.Description) if err != nil { return -1, err } id, err := result.LastInsertId() if err != nil { return -1, err } return id, nil }
Enfin, nous écrivons une fonction principale pour tester ces fonctions :
func main() { db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database") if err != nil { log.Fatal(err) } defer db.Close() events, err := getEvents(db) if err != nil { log.Fatal(err) } for _, event := range events { fmt.Println(event.Title, event.Date, event.Time, event.Description) } event := Event{ Title: "Meeting", Date: "2021-01-01", Time: "10:00:00", Description: "Important meeting with clients", } id, err := createEvent(db, event) if err != nil { log.Fatal(err) } fmt.Println("Created event with ID:", id) }
Ce qui précède est un exemple de code d'utilisation du langage MySQL et Go pour développer un système simple de rappel de planning. Grâce à ce système, nous pouvons facilement stocker et récupérer des informations sur les horaires et créer de nouveaux événements. Vous pouvez développer et optimiser davantage en fonction des besoins réels. J'espère que cet article vous sera utile !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!