Foxtable(狐表)用户栏目专家坐堂 → 请教狐表支持SQLite数据库吗?


  共有8079人关注过本帖树形打印复制链接

主题:请教狐表支持SQLite数据库吗?

帅哥哟,离线,有人找我吗?
逛逛
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12129 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2013/9/11 15:43:00 [显示全部帖子]

以下是引用hunanwl在2013-9-11 14:18:00的发言:
那 我要怎么弄才能支持SQLite数据库呢,添加外部引用文件可以解决吗,狐爸帮忙想想办法啊

[此贴子已经被作者于2013-9-11 14:19:21编辑过]

添加System.Data.SQLite.dll


 回到顶部
帅哥哟,离线,有人找我吗?
逛逛
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12129 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2013/9/11 16:56:00 [显示全部帖子]

三个基本操作:

1、新建数据库(自定义函数)

'传入1个参数,数据库全路径
Dim Path As String = Args(0)
Dim b As System.Data.SQLite.SQLiteException
'成功返回1,失败返回-1
If System.IO.File.Exists(Path) = True Then
    MessageBox.show("已有同名的数据库存在.")
    Return -1
End If
Using myData As New System.Data.SQLite.SQLiteConnection( "data source=" &  Path)
Try
    myData.Open()
    myData.Close()
    SaveConfigValue("目标数据库",Path )
    Return 1
Catch b
    Throw New System.Data.SQLite.SQLiteException(b.Message)
    Return -1
End Try
End Using

 

2、执行SQL(自定义函数)

'传入文本型,SQL语句,返回1,失败返回-1
Dim sql As String = Args(0)
Dim Path As String =  GetConfigValue("目标数据库", "无")  '我是将路径存放在这里,根据需要改
If Path = "无" Then
    MessageBox.show("请定位数据库.")
    Return Nothing
End If

'定义一个数据库连接,使用后立即释放
Using connection As New System.Data.Sqlite.SQLiteConnection("data source=" & Path)
Using cmd As New System.Data.Sqlite.SQLiteCommand(sql, connection)
Try
    connection.Open()
    cmd.ExecuteNonQuery()
    Return 1
Catch e As System.Data.Sqlite.SQLiteException
    connection.Close()
    Throw New System.Data.Sqlite.SQLiteException(e.Message)
    Return -1
End Try
End Using
End Using

 

3、取记录集(自定义函数)

'传入文本型,SQL语句,返回DataTable,失败返回Nothing
Dim sql As String = Args(0)
Dim Path As String =  GetConfigValue("目标数据库", "无")
If Path = "无" Then
    MessageBox.show("请定位数据库.")
    Return Nothing
End If
Using  connection As New System.Data.SQLite.SQLiteConnection("data source=" & Path)
Dim ds As New System.Data.DataSet()
Try
    connection.Open()
    Dim command As New System.Data.SQLite.SQLiteDataAdapter(sql, connection)
    command.Fill(ds, "ds")
    Return ds.Tables(0)
Catch ex As System.Data.SQLite.SQLiteException
    Throw New Exception(ex.Message)
    Return Nothing
End Try
End Using

 

 

 

不过,狐表的Access不需安装就可使用,没有必要用Sqlite


 回到顶部
帅哥哟,离线,有人找我吗?
逛逛
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12129 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2013/9/11 17:41:00 [显示全部帖子]

Sqlite目前对多用户的支持不是很好,他最佳的用途是嵌入式的内存数据库。

 

 

 

同时他的单文件形式,用于历史数据的备份,离线数据的记录,远程数据传递还是不错的。


 回到顶部
帅哥哟,离线,有人找我吗?
逛逛
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12129 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2013/9/11 20:51:00 [显示全部帖子]

以下是引用hunanwl在2013-9-11 20:23:00的发言:
我现在就是不想用ACCESS 想用SQLite  或 mysql   但先在不知道怎么和狐表对接啊   还请多赐教啊   之前你说的连接SQLite 还是没明白 主要是没明白三大步骤具体在那里操作  能讲下  从狐表的角度讲下大体的思路吗  从头到尾的 大概思路  过程  谢谢了

那三个是自定义函数,用于狐表对Sqlite的基本操作,你定义完后在那里都能调用。

其他你还要定义很多函数,像大数据操作时的事务处理等等。

你还是听 有点甜 的,不想用Access,就用MSSQL,或是MYSQL。我记得在论坛都有例子。

最好还是用MSSQL,狐表的支持性好。


 回到顶部
帅哥哟,离线,有人找我吗?
逛逛
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:1693 积分:12129 威望:0 精华:7 注册:2013/7/11 10:52:00
  发帖心情 Post By:2013/9/11 21:11:00 [显示全部帖子]

据我知道的,非狐表官方支持的都一样麻烦。

 回到顶部