Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpSqSe 408 of 509 menu
◀ ▶

SELECT в C#

Команда SELECT формирует набор столбцов из таблицы. ExecuteReader открывает построчный курсор: каждый вызов Read переходит к следующей строке результата.

Для учебных баз в памяти достаточно одного соединения ":memory:". После вставки слова "alpha" запрос вернёт одну строку - в консоли ожидается "alpha":

<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net10.0</TargetFramework> <ImplicitUsings>enable</ImplicitUsings> <Nullable>enable</Nullable> </PropertyGroup> <ItemGroup> <PackageReference Include="Microsoft.Data.Sqlite" Version="10.0.14" /> </ItemGroup> </Project>
using Microsoft.Data.Sqlite; using SqliteConnection db = new("Data Source=:memory:"); db.Open(); using (SqliteCommand c = db.CreateCommand()) { c.CommandText = "CREATE TABLE IF NOT EXISTS terms (word TEXT); INSERT INTO terms VALUES ('alpha')"; c.ExecuteNonQuery(); } using SqliteCommand q = db.CreateCommand(); q.CommandText = "SELECT word FROM terms"; using SqliteDataReader r = q.ExecuteReader(); r.Read(); Console.WriteLine(r.GetString(0));

Если строк несколько, без сортировки их порядок не гарантирован. В примере строка одна, поэтому Read точно переходит на неё, и результат вызова не проверяют. Когда строк может не оказаться, перед чтением колонки смотрят, что Read вернул true.

Добавьте в таблицу "colors" названия "red" и "blue" и выведите каждое в консоль.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить