DapperLib / DapperLib/Dapper

Is Dapper.Rainbow not supporting SQLite?

Open
#1,080 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area:rainbow
Dominant language
C#
Stars
18.4k
Forks
3.7k
Avg merge
5h 8m
Merged PRs (30d)
1

Description

When I use Dapper.Rainbow for SQLite, the following message appears: System.Data.SQLite.SQLiteException: "SQL logic error No such table: INFORMATION_SCHEMA.TABLES"
Is Dapper.Rainbow not supporting SQLite?

The code show as below:

 class Program
    {
        static void Main(string[] args)
        {
            string fileName = "MyDatabase.db";
            if (!File.Exists(fileName)) SQLiteConnection.CreateFile(fileName);
            SQLiteConnection connection = new SQLiteConnection($"Data Source = {fileName}");
            MyDatabase db = MyDatabase.Init(connection, 2000);
            db.Execute("CREATE TABLE IF NOT EXISTS Cat(Id integer PRIMARY KEY AUTOINCREMENT, Name text NOT NULL)");
            db.Cats.Insert(new Cat { Name = "Tom" });
        }
    }
    class MyDatabase:Database<MyDatabase>
    {
        public Table<Cat> Cats { set; get; }
    }
    class Cat
    {
        public int? Id { set; get; }
        public string Name { set; get; }
    }

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the sample through MyDatabase.Init and db.Cats.Insert, then trace the Dapper.Rainbow initialization path that issues the INFORMATION_SCHEMA.TABLES query. Compare that query with SQLite's available schema metadata; done means SQLite either works without this error or its unsupported status is clearly established.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, sqlite
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.