在 C# 中以只读方式打开 SQLITE

Posted

技术标签:

【中文标题】在 C# 中以只读方式打开 SQLITE【英文标题】:Open SQLITE read-only in c# 【发布时间】:2013-01-10 11:46:21 【问题描述】:

我试图根据此链接以只读模式打开SQLITE 数据库:Connection strings for SQLite

SQLITE 连接字符串

string ConString = string.Format(@"Data Source=0dbname.s3db;Version=3;New=False;Compress=True;Mode = Read Only;Temp Path=1;"
                , System.AppDomain.CurrentDomain.BaseDirectory,TempPath); 

            using (SQLiteConnection connection = new SQLiteConnection(ConString))
            
                    //Rerun Exception
                    connection.Open();

例外:

有效参数:Data Source=(必填) 版本=(默认值:2)新=真|假 (默认:假)压缩=真|假(默认:假) UTF8Encoding=True|False(默认:False)

根据Opening A New Database Connection通过SQLITE_OPEN_READONLY标志设置只读模式可以以只读模式打开数据库,但是任何人都可以在c#中完成吗?

【问题讨论】:

根据您提供的链接,它应该是“Read Only=True”而不是“Mode = Read Only”。 @Adrian Faciu:我也试过了,但没用。 【参考方案1】:

我只是将我的应用程序刻录到 CD 上,它在 read-only 模式下工作。

似乎不需要为只读设备(如 CD 或 DVD)设置模式 read only,它工作正常:)

【讨论】:

以上是关于在 C# 中以只读方式打开 SQLITE的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# 或 Perl 中以编程方式打开 PowerPoint 演示文稿并将其保存为 HTML/JPEG?

为啥我不能在 TypeScript 中以这种方式只读数组?

为啥 lambda 参数在 C++11 中以只读方式传递?

在 Spring Boot Transaction 中以只读方式执行 RxJava observable?

在 C# 中以编程方式检查字符串是不是包含有效的 C# 代码

在 C# 中以编程方式杀死进程树