C#操作SQLite数据库

news/2024/5/20 10:33:52 标签: 数据库, c#, serverless

SQLite介绍

SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.

SQLite是一个开源、免费的小型RDBMS(关系型数据库),能独立运行、无服务器、零配置、支持事物,用C实现,内存占用较小,支持绝大数的SQL92标准。

SQLite数据库官方主页:http://www.sqlite.org/index.html

C#操作SQLite Database

C#下SQLite操作驱动dll下载:System.Data.SQLite

C#使用SQLite步骤:

(1)新建一个project

(2)添加SQLite操作驱动dll引用

(3)使用API操作SQLite DataBase

复制代码
using System;
using System.Data.SQLite;

namespace SQLiteSamples
{
    class Program
    {
        //数据库连接
        SQLiteConnection m_dbConnection;

        static void Main(string[] args)
        {
            Program p = new Program();
        }

        public Program()
        {
            createNewDatabase();
            connectToDatabase();
            createTable();
            fillTable();
            printHighscores();
        }

        //创建一个空的数据库
        void createNewDatabase()
        {
            SQLiteConnection.CreateFile("MyDatabase.sqlite");
        }

        //创建一个连接到指定数据库
        void connectToDatabase()
        {
            m_dbConnection = new SQLiteConnection("Data Source=MyDatabase.sqlite;Version=3;");
            m_dbConnection.Open();
        }

        //在指定数据库中创建一个table
        void createTable()
        {
            string sql = "create table highscores (name varchar(20), score int)";
            SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
            command.ExecuteNonQuery();
        }

        //插入一些数据
        void fillTable()
        {
            string sql = "insert into highscores (name, score) values ('Me', 3000)";
            SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
            command.ExecuteNonQuery();

            sql = "insert into highscores (name, score) values ('Myself', 6000)";
            command = new SQLiteCommand(sql, m_dbConnection);
            command.ExecuteNonQuery();

            sql = "insert into highscores (name, score) values ('And I', 9001)";
            command = new SQLiteCommand(sql, m_dbConnection);
            command.ExecuteNonQuery();
        }

        //使用sql查询语句,并显示结果
        void printHighscores()
        {
            string sql = "select * from highscores order by score desc";
            SQLiteCommand command = new SQLiteCommand(sql, m_dbConnection);
            SQLiteDataReader reader = command.ExecuteReader();
            while (reader.Read())
                Console.WriteLine("Name: " + reader["name"] + "\tScore: " + reader["score"]);
            Console.ReadLine();
        }
    }
}
复制代码

关于SQLite的connection string说明:http://www.connectionstrings.com/sqlite/

SQLite GUI客户端列表:http://www.sqlite.org/cvstrac/wiki?p=ManagementTools

SQLite Administrator下载地址:http://download.orbmu2k.de/files/sqliteadmin.zip

操作SQLite Database的C#帮助类SQLite Helper

将一些常用的功能封装一下,封装成SQLite Helper类

  View Code

Codeproject上的一个封装:http://www.codeproject.com/Articles/746191/SQLite-Helper-Csharp

 


    本文转自阿凡卢博客园博客,原文链接:http://www.cnblogs.com/luxiaoxun/p/3784729.html,如需转载请自行联系原作者




http://www.niftyadmin.cn/n/1204714.html

相关文章

高级搜索-百度和必应

文章目录高级搜索搜索引擎基本原理公众号高级搜索 搜索引擎基本原理 搜索引擎的整体架构示意图: 我们来看一下搜索引擎的架构(上图): 网络爬虫爬行互联网连接网页计算去重;添加索引;内容,链接…

效果强悍的博客seo优化秘籍

这里的博客包括单独的独立站,也包括常见的第三方免费博客。能达到效果的平台都可以尽量使用。博客seo优化的方法有很多,效果好的才是强悍的,总结的博客seo优化秘籍如下: 常见免费博客平台:新浪博客、搜狐博客、和讯博客…

百度也强大-进入管理员页面

在百度中进行如下的搜索: inurl:phpadmin可获得一系列的php做的网站管理页面。 下面列出几个: 找到管理员网站竟然如此简单。希望相应的网站做好安全措施,这样的页面是不应该曝露出来的。至于如何登陆,或者通过暴力破解&#…

Ubuntu12.04下修改字符界面字体及其大小

有时我们想切换到字符界面去写一些代码,发现字符界面的字体有些小,对于带镜子的童鞋,看起来将是有些困难。下面我们看一看如何修改其字体大小, 1$ sudo dpkg-reconfigure console-setup 之后根据个人喜好选择, 我这里选…

古龙小说精彩语句

1、 每个人都有逃避别人的时候,可是永远都没有一个人能逃避自己。 (你以为在逃避所有人,其实恰恰你一直都是在逃避自己,往往最难的也是逃避自己。) ——古龙 2、 道是不相思,相思令人老。几番细思量,还是相思好。 ——…

webpack打包初识

1.新建项目目录,目录名称webpack-test 2.进入新建的项目目录中(webpack-test) cd webpack-test 3.使用命令初始化目录 cnpm init 4.在3步骤基础上,会输出让你输入初始化目录的相关信息,你可以根据自己的实际情况进行输入,当然你也可以一路回车下去 5.使用命令安装webpack cnpm …

VirtualBox网络连接方式

概览 VirtualBox网络连接方式主要有下面的四种:NAT、Bridge、Internal和Host-only Adapter。 NAT 这种方式下,虚拟机的网卡连接到宿主的 VMnet8 上。此时系统的 VMWare NAT Service 服务就充当了路由器的作用,负责将虚拟机发到 VMnet8 的…

GO安装

2019独角兽企业重金招聘Python工程师标准>>> CentOS7安装Go运行和开发环境 下载并解压 [rootlocalhost soft]# wget -c https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz (可用迅雷下载) [rootlocalhost soft]# tar -C /us…