この記事は2020年01月20日に投稿しました。
目次
リンク
1. はじめに
こんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。
今回は業務で使用しているC#のSQLiteでテーブル一覧を取得する方法についてです。
2. C#のSQLiteでテーブル一覧を取得する
C#のSQLiteでテーブル一覧を取得するには、以下のような実装になります。
接続文字列は各自の環境に合わせて変更してください。
実装例
using System; using System.Data.SQLite; namespace CSharpSQLiteListTable { class Program { //! データベース名 private static readonly string DatabaseName = "sample.db"; //! テーブル一覧取得SQL private static readonly string ListTableSql = $"SELECT name FROM sqlite_master WHERE type = 'table'"; static void Main(string[] args) { try { // 接続文字列を構築します。 var connectionSb = new SQLiteConnectionStringBuilder() { DataSource = DatabaseName }; // コネクションオブジェクトを生成します。 using (var connection = new SQLiteConnection(connectionSb.ToString())) { // コネクションをオープンします。 connection.Open(); // コマンドオブジェクトを生成します。 using (var command = connection.CreateCommand()) { // テーブル一覧取得SQLを実行します。 command.CommandText = ListTableSql; using (var reader = command.ExecuteReader()) { // 取得した結果がある場合 if (reader.HasRows) { // 取得した行数分繰り返します。 while (reader.Read()) { // テーブル名を表示します。 var name = reader["name"] as string; Console.WriteLine(name); } } } } } } // 例外が発生した場合 catch (Exception e) { // 例外の内容を表示します。 Console.WriteLine(e.Message); } Console.ReadKey(); } } }
3. おわりに
テーブル一覧を取得する処理は、データベースごとの固有の処理になると思います。
リンク
紹介している一部の記事のコードはGitlabで公開しています。
興味のある方は覗いてみてください。
私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。
弊社製品のハイブリッドOS Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。
私自身はiOSモバイルアプリやウィンドウズアプリを得意としております。
ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。
また一緒に働きたい技術者の方も随時募集中です。
興味がありましたらご連絡ください。
EMAIL : info-nr@newral.co.jp / m-futamata@newral.co.jp
TEL : 042-523-3663
FAX : 042-540-1688