C# SQLite数据库操作
WinCE项目开发 VS2008
自己写的SQLite数据库管理类代码如下:
SQLiteManager.cs
using System.Data;
using System.Data.SQLite;
using System.IO;
using System.Reflection; namespace TeachHMI
{
public class SQLiteManager
{
public SQLiteManager(string DataBaseName,string DataTableName)
{
this.dbName = DataBaseName;
this.dtName = DataTableName;
} //数据库文件名
string dbName;
//数据表名
string dtName;
string appPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);
//数据库连接语句
string ConnStr;
//数据库连接
public SQLiteConnection conn;
//SQLiteCommand实例,用于对SQLite发出指令
SQLiteCommand command;
//SQLiteDataAdapter实例,用于将数据库数据填充至DataSet
SQLiteDataAdapter adapter;
//SQLiteDataReader实例,用于读取数据表中数据
SQLiteDataReader reader; /// <summary>
/// 数据库连接
/// </summary>
public void InitializeSQLite()
{
this.ConnStr = "Data Source=" + appPath + "\\" + dbName + ";Pooling=true;FailIfMissing=false";
conn = new SQLiteConnection(ConnStr);
//打开连接
conn.Open();
} /// <summary>
/// 创建数据表
/// </summary>
/// <param name="CreateCommand"></param>
public void CreateTable(string CreateCommand)
{
command = new SQLiteCommand(conn);
command.CommandText = "CREATE TABLE IF NOT EXISTS " + dtName + CreateCommand;
command.ExecuteNonQuery();
} /// <summary>
/// 执行SQL命令,返回受影响的行数
/// </summary>
/// <param name="Command">命令语句</param>
public void ExeNonQueryCmd(string Command)
{
command = new SQLiteCommand(conn);
command.CommandText = Command;
command.ExecuteNonQuery();
} /// <summary>
/// 执行SQL命令,返回SQLiteDataReader
/// </summary>
/// <param name="Command"></param>
/// <returns></returns>
public SQLiteDataReader ExeReaderCmd(string Command)
{
command = new SQLiteCommand(conn);
command.CommandText = Command;
reader = command.ExecuteReader(); //返回类型为SQLiteDataReader
return reader;
} /// <summary>
/// 填充DataSet
/// </summary>
/// <param name="ds"></param>
public void DataFill(DataSet ds)
{
adapter = new SQLiteDataAdapter("SELECT * FROM " + dtName, conn);
adapter.Fill(ds, dtName);
}
}
}
读取数据表中某单元格内数据:
public static SQLiteManager SQLlog;
public static SQLiteDataReader Reader;
int Num = int.Parse(dataGrid1[dataGrid1.CurrentRowIndex, ].ToString());
string SearchCmd = "SELECT * FROM InfoLog WHERE 序号=" + Num + "";
Reader = SQLlog.ExeReaderCmd(SearchCmd);
Reader.Read();
listView1.Items[].SubItems[].Text = Reader.GetString(); //得到数据表中序号为 Num 的这条记录中索引为 7 的列中数据
listView1.Items[].SubItems[].Text = Reader.GetString();
Reader.Close();
插入指令:INSERT INTO UserInfo VALUES 1,小李
更新指令:UPDATE UserInfo SET 用户ID=1
删除指令:DELETE FROM UserInfo WHERE 用户ID=2,姓名='小李'
C# SQLite数据库操作的更多相关文章
- 实验8 SQLite数据库操作
实验报告 课程名称 实验8 SQLite数据库操作 实验日期 2016.5.6 实验项目名称 多媒体应用开发 实验地点 S30010 实验类型 □验证型 √设计型 □综合型 学 时 一 ...
- 我的Android六章:Android中SQLite数据库操作
今天学习的内容是Android中的SQLite数据库操作,在讲解这个内容之前小编在前面有一篇博客也是讲解了SQLite数据库的操作,而那篇博客的讲解是讲述了 如何在Window中通过DOM来操作数据库 ...
- [python]用Python进行SQLite数据库操作
用Python进行SQLite数据库操作 1.导入Python SQLITE数据库模块 Python2.5之后,内置了SQLite3,成为了内置模块,这给我们省了安装的功夫,只需导入即可~ ]: u ...
- 安卓 SQLite数据库操作实例
前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLi ...
- 在安卓开发中使用SQLite数据库操作实例
前段时间写了个安卓平台下SQLite数据库操作的实例 ,一直没得时间总结 ,今天把它弄出来了. 在Android 运行时环境包含了完整的 SQLite. 首先介绍一下SQLite这个数据库: SQLi ...
- iOS 中SQLite数据库操作
在iOS中实现SQLite数据库的操作:1.导入框架(libsqlite3.0.tbd) 2.导入头文件<sqlite3.h> 3.实现数据的增删改查 实现简单 SQLite数据库操作 的 ...
- sqlite数据库操作详细介绍 增删改查,游标
sqlite数据库操作详细介绍 增删改查,游标 本文来源于www.ifyao.com禁止转载!www.ifyao.com Source code package com.example ...
- 实验八 sqlite数据库操作
实验报告 课程名称 基于Android平台移动互联网开发 实验日期 2016年5月3日 实验项目名称 SQLite数据库操作 实验地点 S30010 实验类型 □验证型 √设计型 □综合型 ...
- windows phone 8.1开发SQlite数据库操作详解
原文出自:http://www.bcmeng.com/windows-phone-sqlite1/ 本文小梦将和大家分享WP8.1中SQlite数据库的基本操作:(最后有整个示例的源码)(希望能通过本 ...
- [Android] Sqlite 数据库操作 工具封装类
sqlite 数据库封装类 DatabaseUtil.java(封装的类) package com.jack.androidbase.tools; import android.content.Con ...
随机推荐
- cocos2d-x教程3:用php或DOS批处理命令来转换文件和解压缩zip
在cocos2d-x使用中,须要不停的转换文件和压缩或解压文件.假设全人工来做,太麻烦了,且easy出错. 我如今把一些用的到批处理贴出来,供大家使用 自己主动把dat文件按数字排序重命名gz.DOS ...
- js-jquery-SweetAlert【一】使用
一.下载安装 地址:http://t4t5.github.io/sweetalert/ 二.页面引用 <script src="dist/sweetalert.min.js" ...
- python中计算程序用时的方法
import time start = time.clock() ...... end = time.clock() print(end - start)
- 跟我学Makefile(七)
定义模式规则 使用模式规则来定义一个隐含规则.一个模式规则就好像一个一般的规则,只是在规则中,目标的定义需要有“%”字符.“%”的意思是表示一个或多个任意字符.在依赖目标中同样可以使用“%”,只是依赖 ...
- 把 ElasticSearch 当成是 NoSQL 数据库
Elasticsearch 可以被当成一个 “NoSQL”-数据库来使用么? NoSQL 意味着在不同的环境下存在不同的东西, 而erestingly 它并不是真的跟 SQL 有啥关系. 我们开始只会 ...
- cc150 --链表分割
题目描述 编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针.注意:分割以后 ...
- jms应用
构建jms http://blog.csdn.net/haoxingfeng/article/details/9167895
- Linux root用户下不能打开Google-chrome的解决办法
在root下打开chrome会出现no sandbox的错误 解决方案: 1.找到google-chrome文件 在目录/opt/google/chrome 下 2.使用gedit打开该文件 最后一行 ...
- PDF常见问题总结
欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...
- JUC原子类 1
根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类. 1. 基本类型: AtomicInteger, AtomicLong, AtomicBoolean ; 2. 数组类型: AtomicI ...