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 程序能 ...
随机推荐
- 【ACM】hdu_zs3_1006_AB_201308101123
A/B Time Limit : 1000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Submission ...
- 一个神奇的PHP框架:Phalcon 之编译安装
前言 CentOS7下升级PHP到最新版本以及编译安装phalcon框架,看相关文档无数遍,自己尝试编译安装之后才理解的更深,编译步骤以及碰到的问题做个简单的记录 php-7.0.11编译安装 1.下 ...
- Android之QQ授权登录获取用户信息
有时候我们开发的app须要方便用户简单登录.能够让用户使用自己的qq.微信.微博登录到我们自己开发的app. 今天就在这里总结一下怎样在自己的app中集成QQ授权登录获取用户信息的功能. 首先我们打开 ...
- UpMarqueeTextView-模仿淘宝client向上滚动的广告条
UpMarqueeTextView一个简单的向上滚动的相似跑马灯效果,项目中用到的时候是接受到推送过来的消息向上滚动一次.没有做动态的gif效果,所以都是一些纯文字的简单记录. UpMarqueeTe ...
- hibernate 普通字段延迟载入无效的解决的方法
关联对象的延迟载入就不说了.大家都知道. 关于普通字段的延迟载入,尤其是lob字段,若没有延迟载入,对性能影响极大.然而简单的使用 @Basic(fetch = FetchType.LAZY) 注解并 ...
- IOS的一个关于球碰撞的小游戏
这个游戏是关于一个球随机在屏幕上移动,能够用手指来操纵令一个球,假设两个球碰撞到一起,就表示输了,很easy的一个游戏 在StoryBoard里定义两个UIImageView和一个startbutto ...
- Ant报错之out of memory
用Ant打包一个比較大的项目的时候,遇到OutOfMemory的问题,求助于Google和百度,网上的解决方式非常多,可是个人认为不够具体全面.我的问题须要综合两种方法才解决.把方案记下来.以期帮助大 ...
- windows server使用 LetsEncrypt-Win-Simple来安装和使用用Let's Encrypt免费SSL证书
一.网站部署 LetsEncrypt-Win-Simple可以自动发现已经部署的网站供我们选择要生成证书的网站,而且还需要进行验证.所以在生成证书之前,确保网站已经部署好并可以正常访问. 二.生成证书 ...
- C# 文件的一些基本操作(转)//用C#读写ini配置文件
C# 文件的一些基本操作 2009-07-19 来自:博客园 字体大小:[大 中 小] 摘要:介绍C#对文件的一些基本操作,读写等. using System;using System.IO;us ...
- 一个豆瓣 API 的反向代理配置,旨在解决豆瓣屏蔽小程序请求问题(豆瓣接口 403 问题)
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #erro ...