Felhasználói eszközök

Eszközök a webhelyen


oktatas:programozas:csharp:dotnetcore:sqlite

< .Net Core

.Net Core - SQLite

Névtér és osztályok

Névtér:

  • Sqlite

A következő osztályokat használjuk:

  • SqliteConnection - Kapcsolatobjektum létrehozása.
  • SqliteCommand - adatbázis műveletek
  • SqliteDataReader - adatok olvasása
  • SqliteException - hibakezelés

Projekt létrehozása

Hozzunk létre egy konzolos projektet:

mkdir app01
cd app01
dotnet new console 

Függőség telepítése

Telepítsük a projektbe a MySqlConnector csomagot:

dotnet add package Microsoft.Data.Sqlite

Állomány létrehozása

Program.cs
using Microsoft.Data.Sqlite;
 
var conn = new SqliteConnection ("Data Source=hello.db");
conn.Open();

Tábla létrehozása

Program.cs
using Microsoft.Data.Sqlite;
 
var conn = new SqliteConnection ("Data Source=hello.db");
conn.Open();
 
SqliteCommand cmd = conn.CreateCommand();
string sql = @"
    create table sampletable(
        col1 varchar(20),
        col2 int
    )
";
cmd.CommandText = sql;
cmd.ExecuteNonQuery();

Adat beszúrása

Program.cs
var conn = new SqliteConnection ("Data Source=hello.db");
conn.Open();
 
SqliteCommand cmd = conn.CreateCommand();
string sql = @"
    insert into sampletable
    values
    (@col1, @col2 )
";
cmd.CommandText = sql;
cmd.Parameters.AddWithValue("@col1", "egy");
cmd.Parameters.AddWithValue("@col2", 33);
cmd.Prepare();
cmd.ExecuteNonQuery();

Adatok olvasása

Program.cs
using Microsoft.Data.Sqlite;
 
var conn = new SqliteConnection ("Data Source=hello.db");
conn.Open();
 
SqliteCommand cmd = conn.CreateCommand();
string sql = "select * from sampletable";
cmd.CommandText = sql;
 
SqliteDataReader reader = cmd.ExecuteReader();
while(reader.Read()) {
    Console.WriteLine($"{reader.GetString(0)} {reader.GetInt32(1)}");
}

Olvasás másként

Program.cs
using Microsoft.Data.Sqlite;
 
var conn = new SqliteConnection ("Data Source=hello.db");
conn.Open();
 
 
string sql = "select * from sampletable";
using var cmd = new SqliteCommand (sql, conn);
SqliteDataReader reader = cmd.ExecuteReader();
while(reader.Read()) {
    Console.WriteLine($"{reader.GetString(0)} {reader.GetInt32(1)}");
}

Használhatunk több Write utasítást:

while(reader.Read()) {
    Console.Write(reader.GetString(0));
    Console.Write(" ");
    Console.WriteLine(reader.GetInt32(1));
}

Hibakezelés

Program.cs
using Microsoft.Data.Sqlite;
 
var conn = new SqliteConnection ("Data Source=database.db");
 
try {
    conn.Open();
    Console.WriteLine("Ok");
} catch (SqliteException e) {
    Console.Error.WriteLine("Hiba! A megnyitás sikertelen!");
    Console.Error.WriteLine(e.Message);
}

Lásd még

Linkek

oktatas/programozas/csharp/dotnetcore/sqlite.txt · Utolsó módosítás: 2024/02/29 21:23 szerkesztette: admin