我之前用的是SQL server数据库,但是客户那里觉得安装这个大的数据库比较卡,说是导致蓝屏了,硬往SQL server上赖,没有办法客户是上帝么,给他换个小点的数据库吧!考虑Access,不行这个还是得安装客户端,必须找一个免安装的。最后终于找到了SQLite,不用安装客户端,只需要一个文件就行,在本地新建一个文本文件,改后缀名为.db,用SQLite studio软件打开这个.db文件。但是我之前数据是用SQL server做的,这就需要把数据从SQL server转换成SQLite,

这是时候需要用到的一个SQL server To SQLite DB Convert这个工具,可以去百度搜下找到它,是一个开源的老外写的软件,很不错,转换很快就完成。转换的时候需要注意下: 如果SQL server表中数据后面经常会有空格,这个时候要在SQLite studio中把后面的空格去掉,要不查询不出来数据。

转换完成后生成一个.db文件,然后用SQLite Studio打开,就可以了,非常简单。然后在代码中把sqldataadapter这种sql的前缀统统换成SQLite就可以了,SQL server数据库操作的那几个对象,在SQLite中都有,只是名字前缀不一样,从Sql换成了SQlite,所以很简单的办法修改之前的ADO.NET对象的办法是全工程替换,将Sql替换为SQLite。

string connectionString = "Data Source =" + Environment.CurrentDirectory + @"\Test.db";
conn = new SQLiteConnection(connectionString);

我自己测试了一下,查询7个表,联合查询一共有700多万条数据,SQLite studio中只需要用0.002秒,但是SqlServer却需要用2分半的时间,所以嘛SQLite还是很不错的一个数据库。
还有一个事情就是数据安全没有做,放到本地的.DB,别人可以直接访问的,貌似是,所以感觉很不安全,接下来去研究研究数据文件加密的方法。

数据库如何从SQL server转换到SQLite的更多相关文章

  1. 数据库技术丛书:SQL Server 2016 从入门到实战(视频教学版) PDF

    1:书籍下载方式: SQL Server2016从入门到实战 PDF 下载  链接:https://pan.baidu.com/s/1sWZjdud4RosPyg8sUBaqsQ 密码:8z7w 学习 ...

  2. Access数据库导入到SQL Server 2005 Express中

    安装好SQL Server 2005 Express后,再安装SQL Server Management Studio Express CTP就可以很方便的使用控制台进行数据库的管理.但SQL Ser ...

  3. ActiveMQ 消息持久化到数据库(Mysql、SQL Server、Oracle、DB2等)

    ActiveMQ具体就不介绍了,直接介绍如何讲ActiveMQ持久化到本地数据库,以SQL Server 2008 R2为例1.下载ActiveMQ后直接解压,我下载的是apache-activemq ...

  4. atitit。mssql sql server 转换mysql 及 分页sql ast的搭建

    atitit.mssql sql server 转换mysql  及 分页sql ast的搭建 1. 主要的的转换::函数的转换,分页的转换 1 2. 思路::mssql sql >>as ...

  5. 数据库-如何创建SQL Server身份验证用户

    1.简介 默认安装SQL Server数据库后,SQL Server通过工具SQL Server Management Studio(SSMS)采用“Windows身份验证”方式登录,需要设置相应用户 ...

  6. 【SQL Server高可用性】数据库复制:SQL Server 2008R2中通过数据库复制,把A表的数据复制到B表

    原文:[SQL Server高可用性]数据库复制:SQL Server 2008R2中通过数据库复制,把A表的数据复制到B表 经常在论坛中看到有人问数据同步的技术,如果只是同步少量的表,那么可以考虑使 ...

  7. MySQL数据库导入到SQL Server

    EXEC master.dbo.sp_addlinkedserver @server = N'MYSQL2', @srvproduct=N'mySQL', @provider=N'MSDASQL', ...

  8. 数据库使用:sql server/mysql/sqlite

    本科学过sql server数据库,上研刚开始在做研究时自己想点子自己做,为了简便使用了论文中看到的一个简易数据库sqlite存储使用数据.后来随着数据量的增长,以及数据处理的需求sqlite速度明显 ...

  9. .net(C#数据库访问) Mysql,Sql server,Sqlite,Access四种数据库的连接方式

    便签记录Mysql,Sql server,Sqlite,Access四种数据库的简单连接方式 //using MySql.Data.MySqlClient; #region 执行简单SQL语句,使用M ...

随机推荐

  1. PHP的zip、unzip类详解

    1.打开一个ZIP包,用于读取.写入或修改 open(string $filename [, int $flags]) $filename - 文件名 $flags - 打开模式 ZIPARCHIVE ...

  2. ios runtime简单实用(添加动态属性)

    #import "Person.h" @interface Person (PersonCategory)   // 添加Person中没有的name属性 @property (n ...

  3. mybatis遍历array数组与集合、json

    遍历数组: int saveOptions(@Param("items")String[] items, @Param("questionId")int que ...

  4. [leetcode]146. LRU CacheLRU缓存

    Design and implement a data structure for Least Recently Used (LRU) cache. It should support the fol ...

  5. [leetcode]117. Populating Next Right Pointers in Each NodeII用next填充同层相邻节点

    Given a binary tree struct TreeLinkNode { TreeLinkNode *left; TreeLinkNode *right; TreeLinkNode *nex ...

  6. 【JVM】浅谈双亲委派和破坏双亲委派

    一.前言 笔者曾经阅读过周志明的<深入理解Java虚拟机>这本书,阅读完后自以为对jvm有了一定的了解,然而当真正碰到问题的时候,才发现自己读的有多粗糙,也体会到只有实践才能加深理解,正应 ...

  7. Django之常用命令以及问题汇总

    基本命令 1.新建一个django项目 django-admin.py startproject project-name 2.新建一个app python manage.py startapp ap ...

  8. Laravel Tinker 使用笔记

    我们知道,Laravel Tinker 提供了命令行式的交互调试途径.使用极其方便直观. 使用: #php artisan tinker 要点: 命令要在一行上输入完成,回车执行.>>&g ...

  9. Storm 系列(二)实时平台介绍

    Storm 系列(二)实时平台介绍 本章中的实时平台是指针对大数据进行实时分析的一整套系统,包括数据的收集.处理.存储等.一般而言,大数据有 4 个特点: Volumn(大量). Velocity(高 ...

  10. 2017年UX设计流行的六大趋势

    UX设计在接下来的2017年会有怎样的发展趋势呢?让我们一起回顾去年用户体验设计领域中的变化,来展望新一年用户体验设计的发展趋势吧. 1. 原型制作的爆炸性增长   随着用户体验设计师和用户界面设计师 ...