Foxtable(狐表)用户栏目专家坐堂 → [求助]二个不同的数据库如何做到多表查询


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

主题:[求助]二个不同的数据库如何做到多表查询

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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
[求助]二个不同的数据库如何做到多表查询  发帖心情 Post By:2020/3/11 15:34:00 [显示全部帖子]

Dim cmd As new SQLCommand
cmd.数据源 = "kis"  ‘这个是SQL的数据库

cmd.数据源 = "qs"  ‘这个是Access的数据库


cmd.CommandText = "sele ct a.*,b.* from {BOM对照表} As a "
cmd.CommandText &= " left join [" & Vars("Kis") & "].dbo.物料表 As b on a.itid = b.ItID "

 

If e.Form.Controls("Textfi").text > "" Then cmd.CommandText &= " where " & e.Form.Controls("Textfi").text


Dim sdt As DataTable = cmd.ExecuteReader

Dim tb As Table = Tables(e.Form.Name & "_Table1")
tb.DataSource = cmd.ExecuteReader


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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/12 17:24:00 [显示全部帖子]

那换个方法,但以下两个请教一下老师,应该怎么做?

1、先判断数据库是否存在,如果不存在,则新增数据库(BOM)

 

2、先判断数据表《BOM对照表》是否存在,如果不存在,根据Access增加数据表,

 

 


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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/12 20:00:00 [显示全部帖子]

SqlServer

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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/13 10:42:00 [显示全部帖子]

If exists (Se lect * from sys.databases where name = 'OA2017') then
    drop database [OA2017]
    MessageBox.Show("数据表存在")
Else
    MessageBox.Show("数据表不存在")   
    CREATE DATABASE "OA2017"
End If

 

用Foxtable应该怎么写这个代码,这个昨天我自己也百度过,但不知用Foxtable来写。


图片点击可在新窗口打开查看此主题相关图片如下:无标题.png
图片点击可在新窗口打开查看

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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/13 16:29:00 [显示全部帖子]

老师,就是不会转换为Foxtable来写,可以帮忙改一下吗?

数据源怎么指定?

 

Dim cmd As New SQLCommand
cmd.CommandText = "iif(exists (Se lect * from sys.databases where name = 'OA2017'),drop database [OA2017],CREATE DATABASE 'OA2017')"
cmd.ExecuteScalar

 


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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/13 17:03:00 [显示全部帖子]

老师,存储过程 需要在SQL里写代码,有没有办法不在SQL写代码,直接在Foxtable里完成所有操作,这样才可以简单部署软件!

 

老师,可以直接帮忙改一下代码吗?

 

 


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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/13 19:22:00 [显示全部帖子]

以下是引用有点蓝在2020/3/13 17:05:00的发言:
创建数据库必须通过sql,没有其他办法

老师新增数据库是没有问题的,以下代码就可以完成,关键是我不会如何判断数据是否存在?
Dim cmd As New SQLCommand
cmd.c '数据名称
cmd.CommandText = "CREATE DATABASE 'OA2017'"
cmd.ExecuteScalar


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


加好友 发短信
等级:六尾狐 帖子:1342 积分:9766 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2020/3/14 9:34:00 [显示全部帖子]

顶一下,老师帮一下忙,就差一步了。


 回到顶部