登录模块加载中...
会员投稿 投稿指南 今天是:
打印本页 | 关闭窗口 | 双击滚屏 您的位置首页>>网页制作学习园地>>NET教程>>net数据库应用>>asp.net程序中使用Sqlite数据库
asp.net程序中使用Sqlite数据库
来源:不详 ‖ 作者:未知 ‖ 点击: ‖ 时间:09-03-11 16:00:07 ‖ 【 】‖ 我要投稿
本文介绍了如何在asp.net web 程序中使用Sqlite嵌入式数据库,sqlite数据库可以作为文件放在站点的APP_DATA目录下,适合小网站使用,使用它不需要买sql server空间,而且据说它的性能很不错。

Sqlite是嵌入数据库,类似与MS Sql Server Compact,之所以不用Sql server compact是因为它既不支持SELECT TOP也不支持ROW_NUMBER()还不支持LIMIT,也就是我没有办法用它分页了,取数据的时候必须根据条件取,不能在给定条件下取n条。

1. 安装Sqlite数据库,sqlite数据库非常方便,他的安装只有一个exe文件,可以下载。

下载可执行文件之后使用命令“sqlite3 dbname”执行就可以创建数据库。

或者为了开发方便下载Sqlite Developer软件,使用软件创建也有方便。下载链接

2. 安装dot net下的Sqlite数据库驱动,其实就是一个dll,System.Data.SQLite,他是一个开源项目,可以到SourceForge上下载

3. 在VS中建立一个Web Application,并引用2中的dll

4. 在default.aspx的cs文件中实现访问Sqlite的代码,代码和注释如下:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SQLite;

namespace SqliteWebApp
{
   public partial class _Default : System.Web.UI.Page
   {
       protected void Page_Load(object sender, EventArgs e)
       {
           //这个文件是预先生成的数据库文件
           string sqliteFilePath = Server.MapPath("~/App_Data/firstsqlite.db");
           DataSet ds = new DataSet();
           //声明一个Sqlite数据库的链接
           using (SQLiteConnection conn = new SQLiteConnection("Data Source=" + sqliteFilePath))
           {
               //创建sqlite命令
               using (SQLiteCommand comm = conn.CreateCommand())
               {
                   //打开数据库链接
                   conn.Open();
                   //插入数据
                   comm.CommandText = "INSERT INTO [t] VALUES(10,'Hello 9')";
                   comm.ExecuteNonQuery();

                   //更新数据
                   comm.CommandText = "UPDATE [t] SET name = 'Hello 10' WHERE id = 10";
                   comm.ExecuteNonQuery();

                   //使用参数插入数据
                   comm.CommandText = "INSERT INTO [t] VALUES(@id,@name)";
                   comm.Parameters.AddRange(
                       new SQLiteParameter[]{
                       CreateSqliteParameter("@id",DbType.Int32,4,11),
                       CreateSqliteParameter("@name",DbType.String,10,"Hello 11")
                       });
                   comm.ExecuteNonQuery();

                   comm.Parameters.Clear();
                   //select数据分页用limit就行,很方便
 
|<< << < 1 2 > >> >>|
加入收藏:  加入收藏夹  | 发送给好友:  发送给好友
责任编辑:cengying
相关文章列表
无相关新闻
请文明参与讨论,禁止漫骂攻击。  
网友评论