C#使用SQLite数据库的代码示例

在 .NET 里面使用 SQLite, 我这里使用的wrapper是 System.Data.SQLite,它只需要一个dll,接口符合ADO.Net 2.0的定义,性能也不错,NHibernate用的也是它,目前支持ADO.NET 3.5了,支持集成在 VS2005 和 VS2008里面,而且支持wince,是个亮点。

因为符合ADO.NET的规范,所以使用方式,基本和 SqlClient, OleDb等原生的一致:

using System.Data;using System.Data.SQLite;//...using (SQLiteConnection cn = new SQLiteConnection("Data Source=Test.db3;Pooling=true;FailIfMissing=false")) {//在打开数据库时,会判断数据库是否存在,如果不存在,则在当前目录下创建一个
     cn.Open();using (SQLiteCommand cmd = new SQLiteCommand()){cmd.Connection = cn;//建立表,如果表已经存在,则报错cmd.CommandText = "CREATE TABLE [test] (id int, name nvarchar(20))";cmd.ExecuteNonQuery();//插入测试数据for (int i = 2; i < 5; i++){cmd.CommandText = string.Format("INSERT INTO [test] VALUES ({0}, '中文测试')", i);cmd.ExecuteNonQuery();}for (int i = 5; i < 10; i++){cmd.CommandText = string.Format("INSERT INTO [test] VALUES ({0}, 'English Test')", i);cmd.ExecuteNonQuery();}//读取数据cmd.CommandText = "SELECT * FROM [test]";using (SQLiteDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection)){while (dr.Read()){Console.WriteLine("第{0} 条:{1}", dr.GetValue(0), dr.GetString(1));}}}}

转载于:https://www.cnblogs.com/zhaiqianfeng/archive/2012/07/10/4616820.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576353.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

链表插入功能实现演示

#include <stdio.h> #include <malloc.h> #include <string.h> #include <stdlib.h>typedef struct Node {int data; //数据域struct Node * pNext; //指针域}Node, *pNode;//函数声明 pNode create_list(); void traverse_list(pNode pHead); …

【.NET程序性能分析】使用VS自带的工具分析.NET程序的性能

这篇博文给大家分享的是&#xff0c;如何使用VS自带的性能分析工具来分析我们编写的.NET程序&#xff0c;一边找出程序性能的瓶颈&#xff0c;改善代码的质量。在实际开发中&#xff0c;性能真的很重要&#xff0c;往往决定一个产品的生死~良好的用户体验的基础之一也是程序要有…

链表删除功能实现演示

插入算法和删除演示&#xff1a; #include <stdio.h> #include <malloc.h> #include <string.h> #include <stdlib.h>typedef struct Node {int data; //数据域struct Node * pNext; //指针域}Node, *pNode;//函数声明 pNode create_list(); void …

如何编写Ajax库

Ajax请求步骤 1. 创建AJax对象 2. 连接服务器 3. 发送请求 4. 接受返回 1 function ajax(url, fnSucc, fnFaild)2 {3 //1.创建ajax对象4 var oAjaxnull;5 6 if(window.XMLHttpRequest)7 {8 oAjaxnew XMLHttpRequest();9 } 10 …

数组和链表的总结

数据结构 狭义: 数据结构是专门研究数据存储的问题 数据的存储包含两方面:个体的存储 个体关 系的存储 广义: 数据结构既包含数据的存储也包含数据的操作 对存储数据的操作就是算法 算法: 狭义&#xff1a; 算法是和数据的存储方式密切相关 广义&#xff1a; 算法和数…

[转]CPoint+CSize+CRect学习大纲

CPointCSizeCRect学习大纲。熟知CPoint、CSize、CRect类的基类class CPoint : public tagPOINTclass CSize : public tagSIZEclass CRect : public tagRECT留意CPoint、CSize、CRect之间的互操作&#xff0c;什么样的操作会涉及这些类型中的两个或多个。Point - Point > Siz…

栈入门

线性结构的两种常见应用之一栈 定义&#xff1a;一种可以实现”先进后出”的存储结构&#xff0c;栈类似于箱子 分类&#xff1a;静态栈、动态栈 算法&#xff1a;出栈、压栈 栈的定义&#xff1a; 栈&#xff08;stack&#xff09;又名堆栈&#xff0c;它是一种运算受限的线性…

Packet Tracer 5.0实验(四) 利用三层交换机实现VLAN间路由

一、实验目标 掌握交换机Tag VLAN 的配置&#xff1b;掌握三层交换机基本配置方法&#xff1b;掌握三层交换机VLAN路由的配置方法&#xff1b;通过三层交换机实现VLAN间相互通信&#xff1b;二、实验背景 某企业有两个主要部门&#xff0c;技术部和销售部&#xff0c;分处于不同…

栈程序演示

#include <stdio.h> #include <malloc.h> #include <stdlib.h>typedef struct Node{int data;struct Node * pNext; }NODE,*PNODE;typedef struct Stack{PNODE pTop; //栈顶元素PNODE pBottom; //栈底部元素 }STACK,*PSTACK;void init(PSTACK); v…

noi 2009 二叉查找树 动态规划

思路&#xff1a; 先把权值离散化 按数据值排序 sum[i]为前i个节点频度和 dp[i][j][w]表示把节点[i,j]合并成一颗根节点权值不小于w的子树所需的访问代价与修改代价的最小和 dp[i][j][w]min(dp[i][k-1][w]dp[k1][j][w]sum[j]-sum[i-1]K,dp[i][k-1][a[k].weight]dp[k1][j][a[k].…

出栈程序演示

#include <stdio.h> #include <malloc.h> #include <stdlib.h>typedef struct Node{int data;struct Node * pNext; }NODE,*PNODE;typedef struct Stack{PNODE pTop; //栈顶元素PNODE pBottom; //栈底部元素 }STACK,*PSTACK;void init(PSTACK); v…

不管你挣多少钱永远都是问题

近几个月太多事情&#xff0c;太多变化&#xff0c;一直没有心情写博客&#xff0c;今天补上一篇吧&#xff01; 我会一直在这里坚持下去的&#xff01;他年收入100多万开着一辆宝马5&#xff0c;天天被应酬折腾的要死要活&#xff0c;真想狠狠心不干了&#xff0c;当初干嘛非要…

栈清空程序演示

#include <stdio.h> #include <malloc.h> #include <stdlib.h>typedef struct Node{int data;struct Node * pNext; }NODE,*PNODE;typedef struct Stack{PNODE pTop; //栈顶元素PNODE pBottom; //栈底部元素 }STACK,*PSTACK;void init(PSTACK); v…

hdu 1325 Is It A Tree?

题目链接 #include"stdio.h" int set[1001],v[1001],cnt[10001],flag; //初始化 void fun() {int i;flag1;for(i1;i<1000;i){set[i]i;v[i]0;cnt[i]0;} } //查找根节点 int find(int x) {return xset[x]?x:find(set[x]); } int judge() {int i,t;for(i1;i<1000…

数据库的介绍

##本单元目标 一、为什么要学习数据库 二、数据库的相关概念 DBMS、DB、SQL 三、数据库存储数据的特点 四、初始MySQL MySQL产品的介绍 MySQL产品的安装 ★ MySQL服务的启动和停止 ★ …

InfoPath Resource Sites

http://blogs.msdn.com/infopath_support/archive/2009/11/09/9919841.aspx转载于:https://www.cnblogs.com/mingle/archive/2012/07/24/2606277.html

MySQL的常见命令

###MySQL的常见命令 1.查看当前所有的数据库 show databases; 2.打开指定的库 use 库名 3.查看当前库的所有表 show tables; 4.查看其它库的所有表 show tables from 库名; 5.创建表 create table 表名( 列名 列类型, 列名 列类型…

算法导论 CLRS 22.4-4 解答

先说结论&#xff1a; 对于有环图&#xff0c;top排序不一定可以生成坏边最小的序列 证明&#xff1a; 1. 假设G至少需要去掉k条边才能变成无环图&#xff0c;则任意序列P的坏边数目bad[P] > k&#xff1b; 证明&#xff1a; 如果存在P使得bad[P] < k, 则只要去掉P中的坏…

MySQL DQL语言的笔记

##DQL语言的学习 ###进阶1&#xff1a;基础查询 语法&#xff1a; SELECT 要查询的东西 【FROM 表名】; 类似于Java中 :System.out.println(要打印的东西); 特点&#xff1a; ①通过select查询完的结果 &#xff0c;是一个虚拟的表格&#xff0c;不是真实存…

MySQL学习笔记——显示数据库信息

show privileges 显示可用的系统权限清单。   View Code mysql> show privileges;-----------------------------------------------------------------------------------------------------------------------| Privilege | Context …