转载请注明出处:HateMath归来(http://www.cnblogs.com/hatemath/)

环境:

Visual Studio  社区版

64位 Windows 7系统

新建的解决方案基于.Net 4.5.0.0

步骤:

1.下载安装 System.Data.SQLite

主页:http://system.data.sqlite.org/index.html

因为我是64位win7,所以下载的是64位的版本,下载地址(64位):

http://system.data.sqlite.org/blobs/1.0.105.2/sqlite-netFx45-setup-x64-2012-1.0.105.2.exe

默认安装路径是:C:\Program Files\System.Data.SQLite

2.用Vb.net新建一个解决方案,基于.net 4.5.0.0

然后放置一个DataGridView,一个Button,属性均默认。

3. 添加dll

在“解决方案管理器”中,找到工程名称(不是解决方案名称),右键弹出菜单,选择:添加-》引用

然后按图示操作:

4. 输入代码

 Imports System.Data.SQLite
 Public Class Form1
     Dim conn As SQLiteConnection
     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
         If System.IO.File.Exists("test.db3") = True Then
             System.IO.File.Delete("test.db3")
         End If
         SQLiteConnection.CreateFile("test.db3")
         conn = New SQLiteConnection("Data Source=test.db3;Pooling=true;FailIfMissing=false")
         If conn.State <> ConnectionState.Open Then
             conn.Open()
             MsgBox("打开成功!")
         End If

         Dim cmd As New SQLiteCommand
         cmd.Connection = conn
         cmd.CommandText = "CREATE TABLE Test (ID INTEGER PRIMARY KEY,TestName VARCHAR(500),TestTime DateTime,Operator VARCHAR(100))"
         Dim result As Integer = cmd.ExecuteNonQuery()
          Then
             MsgBox("成功")
         Else
             MsgBox("失败")
         End If

         cmd = conn.CreateCommand()
         cmd.CommandText = "insert into Test(TestName,TestTime,Operator)values(@Name,@TestTime,@Operator)"
         cmd.Parameters.Add("@Name", Data.DbType.String).Value = "动静"
         cmd.Parameters.Add("@TestTime", Data.DbType.DateTime).Value = Now()
         cmd.Parameters.Add("@Operator", Data.DbType.String).Value = "peer"
         result = cmd.ExecuteNonQuery()
          Then
             MsgBox("插入成功")
         End If
         SelectShowInfo()

         '
         cmd = conn.CreateCommand()
         cmd.CommandText = "update  Test set TestName='动静1'"
         result = cmd.ExecuteNonQuery()
          Then
             MsgBox("更新成功")
         End If
         SelectShowInfo()

         '

         cmd = conn.CreateCommand()
         cmd.CommandText = "delete from Test"
         result = cmd.ExecuteNonQuery()
          Then
             MsgBox("删除成功")
         End If
         SelectShowInfo()

         cmd.Dispose()

         If conn.State = ConnectionState.Open Then
             conn.Close()
         End If
     End Sub

     Public Sub SelectShowInfo()
         Dim sa As New SQLiteDataAdapter("select * from Test", conn)
         Dim ds As New System.Data.DataSet
         sa.Fill(ds, "Test")
         Dim mytable As New System.Data.DataTable
         mytable = ds.Tables("Test")
         Me.DataGridView1.DataSource = mytable
         Me.DataGridView1.Refresh()
     End Sub
 End Class

5.运行,单击 Button1,出现异常:

System.DllNotFoundException:“无法加载 DLL“SQLite.Interop.dll”: 找不到指定的模块。

如图:

解决方法:

将C:\Program Files\System.Data.SQLite\2012\bin中的SQLite.Interop.dll和SQLite.Interop.pdb拷贝到工程的debug目录。

6.重新运行程序,再次出错:

System.BadImageFormatException:“试图加载格式不正确的程序。 

如图:

明明是一个正常的64位平台的dll文件,为什么说格式不正确呢?

原来,问题出在visual studio的解决方案平台上,默认的是“Any CPU”

我们需要新建一个64位的平台:

并记得把SQLite.Interop.dll和SQLite.Interop.pdb拷贝到工程的bin\x64\debug目录,不然又提示dll找不到了。

7.再次重新运行程序,可以正常的打开数据库,而且成功的插入、修改、删除记录。

(完)

转载请注明出处:HateMath归来(http://www.cnblogs.com/hatemath/)

(图文实例)用VB.net操作SQLite数据库的更多相关文章

  1. Python操作SQLite数据库的方法详解

    Python操作SQLite数据库的方法详解 本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简单介绍 SQLite数据库是一款非常小巧的嵌入式开 ...

  2. UWP: 在 UWP 中使用 Entity Framework Core 操作 SQLite 数据库

    在应用中使用 SQLite 数据库来存储数据是相当常见的.在 UWP 平台中要使用 SQLite,一般会使用 SQLite for Universal Windows Platform 和 SQLit ...

  3. C#操作SQLite数据库增、删、改、查 欢迎转载

    C#操作SQLite数据库增.删.改.查 欢迎转载 转载记得留下链接地址哦!!! 最近项目上要使用SQLite数据库,不怕大伙笑话毕业四年多了,一直使用Oracle或者MySQL或者SQLServer ...

  4. Java操作Sqlite数据库-jdbc连接

    Java操作Sqlite数据库步骤: 1. 导入Sqlite jdbc 本文使用sqlite-jdbc-3.7.2.jar,下载地址 http://pan.baidu.com/s/1kVHAGdD 2 ...

  5. 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

    1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...

  6. EF6操作Sqlite数据库的项目兼容性问题

    vs2010无法正确打开2015创建的项目里面操作Sqlite数据库时使用EF6创建的edmx文件(会显示空白)   但是可以正常查询 vs2015无法正确打开2010创建的项目里面操作Sqlite数 ...

  7. EF操作sqlite数据库时的项目兼容性问题

    问题:vs2015打不开vs2010建的操作sqlite的实体数据模型edmx文件 原因: 当前电脑必须先安装:驱动库及sqlite的vs拓展 正常情况下安装驱动和拓展后,vs2015就应该可以正常打 ...

  8. JDBC访问及操作SQLite数据库

    SQLite 是一个开源的嵌入式关系数据库,其特点是高度便携.使用方便.结构紧凑.高效.可靠. 与其他数据库管理系统不同,SQLite 的安装和运行非常简单,在大多数情况下,只要确保SQLite的二进 ...

  9. Android中操作SQLite数据库

    我又回到了安卓的学习当中,忙来忙去终于忙的差不多有时间做自己的事情了,这感觉实在是太棒了!!本来想写android的控件以及他们的监视器的,但是我查了查android的手册,基本上都能查到,但是查有些 ...

随机推荐

  1. JS学习四(BOM DOM)

    BOM                Screen对象 console.log(window.width);//屏幕宽度 console.log(window.height);//屏幕高度 conso ...

  2. 201521123107 《Java程序设计》第8周学习总结

    第7周作业-集合 1.本周学习总结 2.书面作业 1.List中指定元素的删除 题集jmu-Java-05-集合之4-1 1.1 实验总结 这次的函数题是编写convertStringToList和r ...

  3. 201521123031《Java程序设计》 第2周学习总结

    1. 本周学习总结 (1)能够更加熟练地使用码云 (2)学习了Arrys和String的用法和一些运用 (3)懂得如何查询函数的源代码,通过查看源代码,能够更深入的了解函数适用情况以及利弊 2. 书面 ...

  4. 201521123019《Java程序设计》第1周学习总结

    一.本周章学习总结 1.了解了JDK和JRE的区别 2.学会用ALT+/快速写代码 3.成功安装JDK和Eclipse 4.初步了解JAVA的发展史 二.书面作业 1.为什么java程序可以跨平台运行 ...

  5. java 课程设计 购物车系统 个人

    Q1.团队课程设计博客链接 团队博客 Q2.个人负责模块或任务说明 我主要负责main函数的编写和系统中瞎看功能代码的编写. Q3.自己的代码提交记录截图 main函数代码如下: public sta ...

  6. Shiro第六篇【验证码、记住我】

    验证码 在登陆的时候,我们一般都设置有验证码,但是我们如果使用Shiro的话,那么Shiro默认的是使用FormAuthenticationFilter进行表单认证. 而我们的验证校验的功能应该加在F ...

  7. mysql数据库-中文乱码问题解决方案

    来自:http://www.2cto.com/database/201108/101151.html MySQL会出现中文乱码的原因不外乎下列几点: .server本身设定问题,例如还停留在latin ...

  8. 将数组分割为几个等长度的子数组(使用slice)

    先了解一下slice方法: slice() 1.定义:slice()可从已有数组中截取返回指定的元素,形成一个新的数组: 语法:arrayObject.slice(start,end): 参数 描述 ...

  9. Android 之内容提供者 内容解析者 内容观察者

    contentProvider:ContentProvider在Android中的作用是对外提供数据,除了可以为所在应用提供数据外,还可以共享数据给其他应用,这是Android中解决应用之间数据共享的 ...

  10. Sublime Text 3 全程详细图文原创教程

    Sublime Text 3 全程详细图文原创教程(持续更新中...) 一. 前言 使用Sublime Text 也有几个年头了,版本也从2升级到3了,但犹如寒天饮冰水,冷暖尽自知.最初也是不知道从何 ...