SQLite 的使用
private void button1_Click(object sender, EventArgs e)
{
//查询数据库内容并绑定
string sql= "select* from employee";
dataGridView1.DataSource = SqliteHelper.ExecuteDatatable(sql);
} private void button2_Click(object sender, EventArgs e)
{
//创建数据库
SQLiteConnection.CreateFile("sqlite.db"); //创建数据库文件
MessageBox.Show("创建成功");
} private void button3_Click(object sender, EventArgs e)
{
//创建表
string sql = "create table employee (name varchar(20), age int)";
SqliteHelper.ExecuteNonQuery(sql);
MessageBox.Show("创建成功");
} private void button4_Click(object sender, EventArgs e)
{
//插入数据记录
string sql = "insert into employee (name,age) values ('wuzhiyu',25)";
SqliteHelper.ExecuteNonQuery(sql); sql = "insert into employee (name,age) values ('Frank',50)";
SqliteHelper.ExecuteNonQuery(sql);
}
//需要System.Data.SQLite.dll 引用
sql 语句
--创建 公司表
CREATE TABLE [Company] (
[CompanyID] INTEGER PRIMARY KEY,--用户编号
[CompanyName] VARCHAR(50) NOT NULL,--公司名称
[Address] VARCHAR(200), --地址
[Tel] VARCHAR(11), --联系电话
[Memo] VARCHAR(200),--备注 [CreatTiem] datetime NOT NULL,--创建时间
[CreateName] VARCHAR(50) NOT NULL,--创建人
[ModifyTime] datetime,--修改时间
[ModifyName] VARCHAR(50)--修改人
); --创建 客户表
CREATE TABLE [Custom] (
[CustomID] INTEGER PRIMARY KEY, --客户编号
[CustomName] VARCHAR(50) NOT NULL, --客户名称
[Address] VARCHAR(200), --地址
[Tel] VARCHAR(11), --联系电话
[CompanyID] INTEGER NOT NULL, --公司ID
[Memo] VARCHAR(200), --备注 [CreatTiem] datetime NOT NULL,
[CreateName] VARCHAR(50)NOT NULL,
[ModifyTime] datetime,
[ModifyName] VARCHAR(50)
);
--创键 表格收据表
CREATE TABLE [ReceiptTable](
[ReceiptTableID] INTEGER PRIMARY KEY,--收据ID
[CompanyID] INTEGER NOT NULL, --公司ID
[Number] INTEGER NOT NULL, --票号
[CustomID] INTEGER NOT NULL, --客户编号
[CustomName] Varchar(50) NOT NULL,--客户名称
[Totle] NUMERIC(18,2) NOT NULL, --收费金额
[TotleWord] varchar(100) NOT NULL,--收费大写
[Memo] VARCHAR(200), --备注
[FeeTime] datetime NOT NULL,-- 收费时间
[Brokerage] Varchar(50) NOT NULL,--经手人
[Accounting] Varchar(50) NOT NULL,--会计
[Cashier] Varchar(50) NOT NULL,--出纳
[Status] Varchar(10) NOT NULL,--状态
[CancelTime] datetime, --作废日期
[CancelName] Varchar(50)--作废人
); --创建表格收据详情
Create table [Detail](
[DetailID] INTEGER PRIMARY KEY,--明细ID
[ReceiptTableID] INTEGER NOT NULL, --收据ID
[FeeID] INTEGER NOT NULL, --收费项ID
[FeeName] VARCHAR(200), --收费项名称
[Quantity] INTEGER NOT NULL, --数量
[Price] NUMERIC(18,2) NOT NULL, --单价
[Unit] Varchar(5) NOT NULL,--单位
[Total] NUMERIC(18,2) NOT NULL, --金额
[Memo] VARCHAR(200) --备注
);
--收费项目表
CREATE TABLE [Fee] (
[FeeID] INTEGER PRIMARY KEY,--项目编号
[FeeName] VARCHAR(50) NOT NULL,--收费项名称
[Unit] VARCHAR(5) ,--单位
[Price]NUMERIC(18,2) ,--单价
[CompanyID] INTEGER ,--用户编号
[CreatTime] Datetime NOT NULL,--创建时间
[CreateName] VARCHAR(50) NOT NULL,--创建人
[ModifyTime] Datetime,--修改时间
[ModifyName] VARCHAR(50)--修改人
);
--收据表
CREATE TABLE [Receipt] (
[ReceiptID] INTEGER PRIMARY KEY,--收据ID
[CompanyID] INTEGER,--公司ID
[Number] INTEGER NOT NULL,--票号
[CustomID] INTEGER NOT NULL,--客户编号
[CustomName] VARCHAR(50) NOT NULL,--客户名称
[FeeID] VARCHAR(50) NOT NULL,--收费项
[FeeName]VARCHAR(200)NOT NULL,--收费项名称
[Total] NUMERIC(18,2) NOT NULL,--收费金额
[TotalWord]VARCHAR(100) NOT NULL,--金额大写
[Memo] VARCHAR(200) ,--备注
[FeeTime] Datetime NOT NULL,--收费日期
[Brokerage] VARCHAR(50) NOT NULL,--经手人
[Accounting] VARCHAR(50) NOT NULL,--会计
[Status] VARCHAR(10) NOT NULL,--出纳
[CancelTime] datetime,--作废日期
[CancelName] VARCHAR(50) --作废人
);
--日志表
CREATE TABLE [Log] (
[LogID] INTEGER PRIMARY KEY,--日志编号
[CompanyID] int NOT NULL,--公司编号
[LogInfo] VARCHAR(200) NOT NULL,--日志信号
[LogTime] datetime NOT NULL,--日志时间
[CreateName]VARCHAR(50) NOT NULL --创建人名称
);
--异常信息表
CREATE TABLE [ExceptionInfo] (
[ID] INTEGER PRIMARY KEY,--信息编号
[Message] VARCHAR(200) NOT NULL,--异常信息
[Time] Datetime NOT NULL,--异常时间
[Status] Varchar(10) NOT NULL --是否处理
);
SQLite 的使用的更多相关文章
- 【开源】分享2011-2015年全国城市历史天气数据库【Sqlite+C#访问程序】
由于个人研究需要,需要采集天气历史数据,前一篇文章:C#+HtmlAgilityPack+XPath带你采集数据(以采集天气数据为例子),介绍了基本的采集思路和核心代码,经过1个星期的采集,历史数据库 ...
- UWP开发之ORM实践:如何使用Entity Framework Core做SQLite数据持久层?
选择SQLite的理由 在做UWP开发的时候我们首选的本地数据库一般都是Sqlite,我以前也不知道为啥?后来仔细研究了一下也是有原因的: 1,微软做的UWP应用大部分也是用Sqlite.或者说是微软 ...
- 深入解析Sqlite的完美替代者,android数据库新王者——Realm
写在前面: 又到一年一度七夕虐狗节,看着大家忍受着各种朋友圈和QQ空间还有现实生活中的轮番轰炸,我实在不忍心再在这里给大家补刀,所以我觉得今天不虐狗,继续给大家分享有用的. 如果你比较关心androi ...
- VS15 preview 5打开文件夹自动生成slnx.VC.db SQLite库疑惑?求解答
用VS15 preview 5打开文件夹(详情查看博客http://www.cnblogs.com/zsy/p/5962242.html中配置),文件夹下多一个slnx.VC.db文件,如下图: 本文 ...
- Android之SQLite数据存储
一.SQLite保存数据介绍 将数据库保存在数据库对于重复或者结构化数据(比如契约信息)而言是理想之选.SQL数据库的主要原则之一是架构:数据库如何组织正式声明.架构体现于用于创建数据库的SQL语句. ...
- 【教程】SQLite数据库修复
SQLite 大家都知道,就不多说了. 有时候数据量大了,或者存储过程中出现异常,数据库就可能会出问题. 这是以前公司产品出现过的问题,导致软件都打不开了,我花了不少时间才解决的,趁现在有空贡献出来. ...
- SQLite学习笔记(十)&&加密
随着移动互联网的发展,手机使用越来越广泛,sqlite作为手机端存储的一种解决方案,使用也非常普遍.但是sqlite本身安全特性却比较弱,比如不支持用户权限,只要能获取到数据库文件就能进行访问:另外也 ...
- mono for android中使用dapper或petapoco对sqlite进行数据操作
在mono for android中使用dapper或petapoco,很简单,新建android 类库项目,直接把原来的文件复制过来,对Connection连接报错部分进行注释和修改就可以运行了.( ...
- 【腾讯Bugly干货分享】微信iOS SQLite源码优化实践
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57b58022433221be01499480 作者:张三华 前言 随着微信iO ...
- 【腾讯Bugly干货分享】移动客户端中高效使用SQLite
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57b57f2a0703f7d31b9a3932 作者:赵丰 导语 iOS 程序能 ...
随机推荐
- hdu 4707 bellman
最短路的优先队列做法: #include<stdio.h> #include<queue> #include<string.h> #define N 100010 ...
- js es6 Object.freeze
将对象冻结,使用Object.freeze方法 const foo = Object.freeze({}); // 常规模式时,下面一行不起作用: // 严格模式时,该行会报错 foo.prop = ...
- [转]十五天精通WCF——第十三天 用WCF来玩Rest
在我们玩wcf的时候,都会潜意识的觉得wcf就是通过soap协议交换消息的,并且可以在basic,tcp,msmq等等绑定中任意切换, 牛逼的一塌糊涂,但是呢,如果说哪一天wcf不再使用soap协议, ...
- 查看TEMP 表空间usage
SELECT S.sid || ','|| S.serial# sid_serial, S.username, S.osuser, P.spid, S.module, P.program, SUM ( ...
- Java:深入自定义注解(Annotation)
在网上找了很多资料也有写的比较好的,但是总有有一点半点的细节没有写出来,在这里自己总结下使用. 使用Java的自定义注解,首先个人需要了解下Java为我们提供的元注解和相关定义注解的语法.(这个我在网 ...
- jmeter默认生成测试报告
我的jmeter安装在F:\study\apache-jmeter-3.1\apache-jmeter-3.1下,在bin目录下执行 其中E:\code\jmeterReport\Course-tes ...
- Manacher求最长回文
#1032 : 最长回文子串 时间限制:1000ms 单点时限:1000ms 内存限制:64MB 描写叙述 小Hi和小Ho是一对好朋友.出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助 ...
- SQL server触发器、存储过程操作远程数据库插入数据,解决服务器已存在的问题
近期弄了一个小项目,也不是非常复杂,须要将一个数据库的一些数据备份到另外一个库.不是本地,可能是网络上其它的数据库.想了一下,用了存储过程和触发器. 也不是非常复杂,首先我须要操作远程数据库,于是写了 ...
- web 前端学习笔记
<!DOCTYPE HTML> <head> <style type="text/css"> body { background: #ff00 ...
- JS基础之开篇
JavaScript是解释型语言,无需编译就可以随时运行,这样哪怕语法有错误,没有语法错误的部分还是能正确运行. 1.JavaScript能做什么? 01, javaScript可以进行表单验证 如果 ...