C#之WPF连接sqllite数据库
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Data.SQLite;
- namespace EasyEnergy.AppLogicService
- {
- public class AlarmSqliteDbHelp
- {
- public static string ConnSqlLiteDbPath = @"D:\data\test.data";
- public static string ConnString
- {
- get
- {
- return string.Format("Data Source={0}", ConnSqlLiteDbPath);
- }
- }
- public static int ExecuteRefId(string sql)
- {
- SQLiteConnection connection;
- SQLiteTransaction transaction = null;
- try
- {
- connection = new SQLiteConnection(ConnString);
- connection.Open();
- var command = new SQLiteCommand(connection)
- {
- CommandText = sql + ";SELECT last_insert_rowid()"
- };
- return Convert.ToInt32(command.ExecuteScalar());
- }
- catch (Exception)
- {
- transaction.Rollback();
- throw;
- }
- }
- public static int Execute(string sSQL, bool bUseTransaction = false)
- {
- int num;
- SQLiteConnection connection;
- //if (!bUseTransaction)
- //{
- // connection = new SQLiteConnection(ConnString);
- // connection.Open();
- // var command = new SQLiteCommand(connection) {
- // CommandText = sSQL
- // };
- // return command.ExecuteNonQuery();
- //}
- SQLiteTransaction transaction = null;
- try
- {
- connection = new SQLiteConnection(ConnString);
- connection.Open();
- transaction = connection.BeginTransaction();
- num = new SQLiteCommand(connection) { CommandText = sSQL }.ExecuteNonQuery();
- transaction.Commit();
- }
- catch (Exception)
- {
- transaction.Rollback();
- throw;
- }
- return num;
- }
- public static DataTable GetDataTable(string sSQL)
- {
- var connection = new SQLiteConnection(ConnString);
- connection.Open();
- var command = new SQLiteCommand
- {
- CommandText = sSQL,
- Connection = connection
- };
- var adapter = new SQLiteDataAdapter(command);
- var dataTable = new DataTable("table");
- adapter.Fill(dataTable);
- return dataTable;
- }
- public static int GetMaxId(string sKeyField, string sTableName)
- {
- DataTable dataTable = GetDataTable("select ifnull(max([" + sKeyField + "]),0) as MaxID from [" + sTableName + "]");
- if ((dataTable != null) && (dataTable.Rows.Count > ))
- {
- return Convert.ToInt32(dataTable.Rows[][].ToString());
- }
- return ;
- }
- public static object GetSingle(string sSQL)
- {
- DataTable dataTable = GetDataTable(sSQL);
- if ((dataTable != null) && (dataTable.Rows.Count > ))
- {
- return dataTable.Rows[][];
- }
- return null;
- }
- }
- }
C#之WPF连接sqllite数据库的更多相关文章
- 如何从40亿整数中找到不存在的一个 webservice Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库 WPF实战案例-打印 RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange
如何从40亿整数中找到不存在的一个 前言 给定一个最多包含40亿个随机排列的32位的顺序整数的顺序文件,找出一个不在文件中的32位整数.(在文件中至少确实一个这样的数-为什么?).在具有足够内存的情况 ...
- WPF应用Access数据库
WPF应用Access数据库 现在Access数据库中有表GuestTable,其中的字段如下图所示,现在需要应用WPF技术为此表制作一个数据库管理窗口,实现对此数据库中的数据进行数据的增.删.改和查 ...
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库
前段时间在园子里看到了小蝶惊鸿 发布的有关绿色版的Linux.NET——“Jws.Mono”.由于我对.Net程序跑在Linux上非常感兴趣,自己也看了一些有关mono的资料,但是一直没有时间抽出时间 ...
- PDO连接mysql数据库
1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接 ...
- 【.net 深呼吸】连接Access数据库应注意的几点
本地数据库可以有Y种选择,比如Sqlite.SQL Server Express.SQL Local DB.SQL Server CE.Access等,本文老周选用比较著名的Access本地数据库,在 ...
- nhibernate连接11g数据库
我框架的数据映射用 nhibernate连接多数据库,这次又增加了oracle11g,负责开发的同事始终连接不上,悲催的sharepoint调试是在不方便... 下面描述下问题的解决,细节问题有3个: ...
- pycharm连接mysql数据库
新的环境配置pycharm的项目时,发现pycharm不能连接到mysql数据库.由于安了java环境但是还没配置相关的库,并且jetbrains家的IDE一般都是java写的,于是猜想可能是java ...
- Windows操作系统下远程连接MySQL数据库
用Eclipse做一个后台项目,但是数据库不想放在本地电脑,于是买了一个腾讯云服务器(学生有优惠,挺便宜的),装上MySQL数据库,但是测试连接的时候,发现总是连接不是上,但是本地数据库可以连接,于是 ...
随机推荐
- Spring Boot MyBatis 数据库集群访问实现
Spring Boot MyBatis 数据库集群访问实现 本示例主要介绍了Spring Boot程序方式实现数据库集群访问,读库轮询方式实现负载均衡.阅读本示例前,建议你有AOP编程基础.mybat ...
- CSS3 translate导致字体模糊
今日客户反馈,发现 使用了 translate会导致字体模糊. .media-body-box{ @media all and (min-width: 992px){ position: absolu ...
- 初识JAVA语言
推荐阅读: 我的CSDN 我的博客园 QQ群:704621321 前言 很多游戏开发者可能会有疑问,你会C#,JS,TS,为什么还要初识JAVA呢?有人可能会说,多学点对自己有好处 ...
- Java连载26-方法(语法结构)
一.方法 1.返回值类型如果不是void,表示这个方法执行结束之后必须返回一个具体的数值,当方法执行结束的时候没有返回任何数值,编译器会报错,怎么返回值呢?并且要求“值”的数据类型必须和“方法的返回值 ...
- python控制窗口口字形运动
import win32con import win32gui import time import math notepad = win32gui.FindWindow("Photo_Li ...
- JIra配置权限方案
目录: 添加用户 添加用户组 将用户分配到不同的组中 创建项目权限方案 配置项目采用的权限方案 1. 添加用户 1)使用admin权限的账户登录后,点击右上角的配置,选择system 2)在打开的页面 ...
- Scrum的三个仪式:Sprint规划会,Scrum每日站会,Sprint评审会
转自:http://blog.sina.com.cn/s/blog_6997f01501010m21.html Sprint Planning Meeting(Sprint规划会) 根据Product ...
- 【HDU6035】 Colorful Tree
题目的意思是:给定一个点带颜色的树,两点之间的距离定义为路径上不同颜色的个数.求所有点对间的距离和. 做法有点分治,还有传说中的虚树DP,树上差分. 点分治法: 考虑每个点的贡献,可以发现一个点的子树 ...
- HDU-6229 ICPC-沈阳M- Wandering Robots 概率
HDU - 6229 题意: 在一个n*n的地图中,有一个初始在(0,0)位子的机器人,每次等概率的向相邻的格子移动或者留在原地.问最后留在格子(x,y)(x+y>=n-1)的地方的概率. 思路 ...
- Codeforces Round #480 (Div. 2) A. Links and Pearls
题目地址:http://codeforces.com/contest/980/problem/A 官方题解: 我的理解:o表示珍珠,-表示链子,给一串字符串你可以任意重组这条项链(不能删去),判断这条 ...