微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用SQLite数据库开发数据库应用

一、关于sqlite

sqlite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中(如Android),可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起MysqL、Postgresql这两款开源世界著名的来讲,它的处理速度比他们都快。sqlite第一个Alpha版本诞生于2000年5月。 至今已经有13个年头,sqlite也迎来了一个版本 sqlite 3已经发布。sqlite是一个由C语言写成的开源项目,零配置无需安装即可使用,支持2TB的数据库大小,代码简洁、实用、独立。官方网站为http://www.sqlite.org,您可以在这里找到该项目的源代码和文档。

二、使用sqlite

以C#为例,要使用sqlite,我们首先需要在项目中添加System.Data.sqlite.dll的引用,该类库可以从这里下载下载。经典的ADO.Net模式走起!

class sqlite
    {
            private string DataSource = "D:\\Students.db3";
            private sqliteConnection Connection=new sqliteConnection();
            private sqliteCommand Command=new sqliteCommand();


        public void Main()
        {
            //创建数据库
            sqliteConnection.CreateFile(DataSource);
            //连接数据库
            Connection.ConnectionString = "Data Source=" + DataSource;
            Connection.open();
            //创建数据表
            Command.CommandText = "CREATE TABLE Student(Name varchar(20),Age varchar(10),Sex varchar(20))";
            Command.Connection = Connection;
            Command.ExecuteNonQuery();
            //插入数据
            Command.CommandText = "INSERT INTO Student VALUES('张三','20','男')";//这是一种形式
            Command.ExecuteNonQuery();
            Command.CommandText = "INSERT INTO Student(Name,Age,Sex) VALUES(@Name,@Age,@Sex)";//这是另一种形式,配合下面的语句,形式更加优美
            sqliteParameter[] Parameter = new sqliteParameter[] 
                                   {
                                       new sqliteParameter("@Name","张三"),new sqliteParameter("@Age","20"),new sqliteParameter("@Sex","男")
                                   };
            Command.Parameters.AddRange(Parameter);
            Command.ExecuteNonQuery();
            //读取数据
            StringBuilder S = new StringBuilder();
            Connection.open();
            Command.Connection = Connection;
            Command.CommandText = "SECLECT * FROM Student";
            sqliteDataReader Reader = Command.ExecuteReader();
            while (Reader.Read())
            {
                S.Append(
                    "[Name=" + Reader.GetValue(0).ToString() + ","
                    + "Age=" + Reader.GetValue(1).ToString() +","
                    +"Sex="+Reader.GetValue(2).ToString()+ "]");
                Console.WriteLine(S.ToString());
                S.Remove(0,S.Length);
            }
            Reader.Close();
            Reader.dispose();
            Connection.Close();
        }


    }

原文地址:https://www.jb51.cc/sqlite/200953.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐