請問在VB里可不可以將SQL數據庫轉換為DBF格式的文件﹖急求助﹗﹗﹗

starskyli 2003-08-18 05:14:31
請問在VB里可不可以將SQL數據庫轉換為DBF格式的文件﹖急求助﹗﹗﹗
...全文
38 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wfwater 2003-09-15
  • 打赏
  • 举报
回复
学习。
wdwd05 2003-09-12
  • 打赏
  • 举报
回复
UP
yijiansong 2003-09-12
  • 打赏
  • 举报
回复
这个问题我都回答N遍, 用SQLSERVER的DTS导出为DBF文件或其他数据库文件,完成时保存为VB脚本,然后在VB中调用这个模块就能实现此功能。 最简单的方法,代码都不用写

把分给我,再在这个问题上赚分我也不会不好意思。。。
dengyiwolf 2003-09-12
  • 打赏
  • 举报
回复
就有代码写呀...
转换....
tangjinn 2003-09-12
  • 打赏
  • 举报
回复
这个问题我都回答N遍, 用SQLSERVER的DTS导出为DBF文件或其他数据库文件,完成时保存为VB脚本,然后在VB中调用这个模块就能实现此功能。 最简单的方法,代码都不用写

不要把分给我,再在这个问题上赚分我都不好意思了。。。
xinshou1979330 2003-09-12
  • 打赏
  • 举报
回复
关注此问题
astroboy 2003-09-12
  • 打赏
  • 举报
回复
学习!
bennycao 2003-09-11
  • 打赏
  • 举报
回复
经过自己看了好多相关贴子与自己摸索,终于成功了,特贴出来与大家分享
strFile 是要导出的DBF文件名,rsPayroll 报盘数据

Private Sub ExportBankData(ByVal strFile As String, rsPayroll As ADODB.Recordset)
Dim cnDBF As ADODB.Connection
Dim strConString As String
Dim strPath As String
Dim strSql As String


On Error GoTo Errorhandle
If InStr(strFile, "\ ") > 0 Then
strPath = Left(strFile, InStrRev(strFile, "\ ", -1, vbTextCompare) - 1)
Else
strPath = "C: "
strFile = "C:\报盘.dbf "
End If

strConString = "Driver={Microsoft Visual FoxPro Driver}; " & _
"SourceType=DBF; " & _
"SourceDB= " & strPath & "; " & _
"Exclusive=YES; "
Set cnDBF = New ADODB.Connection
cnDBF.ConnectionString = strConString
cnDBF.Open

strSql = "CREATE TABLE [ " & strFile & "] " & _
"(帐号 char(20),金额 numeric(8,2),姓名 char(22),编号 char(30),摘要 char(20),TEMP char(1)) "
cnDBF.Execute strSql

Do While Not rsPayroll.EOF
strSql = "Insert into " & strFile & _
" Values(' " & Trim$(rsPayroll!hrsscount) & "', " & CStr(rsPayroll!hrssacm) & ",' " & _
Trim$(rsPayroll!hrsnam) & "','','','') "
cnDBF.Execute strSql
rsPayroll.MoveNext
Loop

cnDBF.Close
Set cnDBF = Nothing
Exit Sub
Errorhandle:
Set cnDBF = Nothing
Err.Raise Err.Number, Err.Source, Err.Description
End Sub
zhoupq 2003-08-23
  • 打赏
  • 举报
回复
在 Form 上放置一个 CommandButton,加入 Microsoft DAO 3.51 Object Library,我们将使用 Biblio.mdb 的 authors Table,在 Command1_Click 中加入以下程序码:

Dim db As Database
Set db = Workspaces(0).OpenDatabase(App.Path & "\biblio.mdb")
'db.execute "SELECT Table.Fields INTO [dbms type;DATABASE=path].[unqualified filename] FROM [Table or Tables]"

在以上程序中,db.execute 指令行之指令依资料库或文件的种类说明如下:

DBase文件

SQL 语法:SELECT * INTO [dBase III;DATABASE=资料库路径].[dbase文件名称] FROM [authors]
db.Execute "SELECT * INTO [dBase III;DATABASE=C:\test].[authors.DBF] FROM [authors]"
注意事项:
1、authors.DBF 事先不可存在,否则会产生错误!
2、若您没有 Dbase,您可以使用 Access 来连结这个 Table,以便观察结果!
馮強 2003-08-19
  • 打赏
  • 举报
回复
SQL语句:"SELECT * INTO [dBase III;DATABASE=APP.PATH" & "\].文件名 FROM 表名"

???这样的SQL语句是非法的吧,并不能被SQL-Server执行!

简单的方法是将建立一个通用的DBF表结构,用两个ADO recordset同时连接SQL表和DBF表,通过遍历的方式,复制表记录。
starskyli 2003-08-19
  • 打赏
  • 举报
回复
zhoupq , 你好﹐可否具體一些.
zhoupq 2003-08-18
  • 打赏
  • 举报
回复
建立一个ADO
SQL语句:"SELECT * INTO [dBase III;DATABASE=APP.PATH" & "\].文件名 FROM 表名"
sindyzhou 2003-08-18
  • 打赏
  • 举报
回复
应该可以吧,不过美实试过,

这个你试试就可以了

1,216

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧