Foxtable(狐表)用户栏目专家坐堂 → [求助]有了UDPclient,怎么实现内网数据的连接?


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

主题:[求助]有了UDPclient,怎么实现内网数据的连接?

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


加好友 发短信
等级:六尾狐 帖子:1316 积分:9484 威望:0 精华:1 注册:2010/7/21 14:20:00
[求助]有了UDPclient,怎么实现内网数据的连接?  发帖心情 Post By:2015/11/15 10:33:00 [只看该作者]

本月的促销机会很好,也跟领导汇报了,同意购买一套永久开发版!

在正式改造之前,有个老问题需要得到大家的帮助

图片点击可在新窗口打开查看

现在推出了UDPclient,也是高级开发版或永久开发版才有的功能,那么问题来了,对于我这么一个不懂socket编程的菜鸟来说,习惯了狐表数据库直连的方式,现在UDPclient怎么实现这个功能?
原来数据库直连的项目,怎么利用UDPclient方便的改造达到内网数据库的连接?

在如上图的方式中,在网页服务器设置服务器版UDPclient(利用原来的项目设置内网服务器数据库连接),那么我外网的用户是否可以直接用原来的项目,通过设置新的数据源的方式与网页服务器的服务器端UDPclient项目连接即可调用内网数据库?这样的话,原来的项目稍作改造即可实现原来的所有功能!

或者说现在UDPclient的应用,只能通过“设置UDPClient的ReceivedMessage事件代码”来实现每个数据库的操作?

望得到大家的指点和帮助!

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/15 11:22:00 [只看该作者]

很简单。

 

1、查询数据:直接发sql语句即可,如 给服务器发送 select * f rom {表A},然后服务器,就把查找到的结果,合并成 a,b,c,d;a2,b2,c2,d2的字符形式返回。

 

2、新增数据:可以直接发 insert into 语句

 

3、修改/删除数据:也可以发送sql语句。

 

也就是说,服务器就是负责执行sql语句和返回结果而已。

 

------------------但这样的话,可能不安全,最好的做法,是在服务器端,实现 增删改查 的功能,客户端,发送字符如 "增加用户|name|password" 服务器就自动增加一行。


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


加好友 发短信
等级:小狐 帖子:321 积分:1916 威望:0 精华:0 注册:2014/8/24 13:36:00
  发帖心情 Post By:2015/11/15 13:56:00 [只看该作者]

不懂socket编程,就借用狐爸的劳动成果,直接用OpenQQ,别用UDPclient

建议:

1、在你的网页服务器上安装一个MsSql,用于操作数据库服务器

2、设置一个用户对外开放,权限为最低权限,只能执行几个固定的存储过程,并将存储过程加密。

3、在网页服务器上再部署一个狐表服务端,就用OpenQQ,用于用户控制。

 

基本流程:

 

1、客户登陆服务端,如果通过,获取本次连接密码(由服务端随机生成,并存储在数据库中,掉线就清除。)

2、每次执行存储过程时,必须传递这个连接密码和用户名。

3、存储过程接到请求后,先验证这个密码和用户名是否有效,再执行后续操作。

 

这样做最大的优点就是:你只要补充一下存储过程的知识和怎样自定义数据的保存就行了。

 

 

 


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


加好友 发短信
等级:六尾狐 帖子:1316 积分:9484 威望:0 精华:1 注册:2010/7/21 14:20:00
  发帖心情 Post By:2015/11/15 13:59:00 [只看该作者]

如果直接在数据源那里设置好就能实现数据连通,不需要记sql语句实现,这样才算傻瓜式编程了

只不过原来狐表项目直连数据库的机制通过服务器端udpclient建立起内外网的桥接,狐表建立起自己的通讯协议,那么就完美了!

 

不过袍哥的方式也算是2016版的进步,已经可以迂回实现这些功能了,不知道有没有类似的范例?

 

如果以后狐表改进,直接建立一个udpclient的函数进行桥接,能再傻瓜式一点,那就更好了。


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/15 14:29:00 [只看该作者]

用sql语句的方式,就是傻瓜式编程。你的操作等等都不变,只需要写一个方法,把接收到的文本转换成表格,以及把表格转换成文本即可。

 

只要实现了,其余的东西基本不变。

 

--------------实例没有,不就是字符串传递和处理而已么?


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


加好友 发短信
等级:六尾狐 帖子:1316 积分:9484 威望:0 精华:1 注册:2010/7/21 14:20:00
  发帖心情 Post By:2015/11/15 15:11:00 [只看该作者]

琢磨琢磨再提问,谢谢

游哥的提议对我来说有点难度,呵呵
在你的网页服务器上安装一个MsSql,用于操作数据库服务器
MsSql是不是只建立几个存储过程?数据的话还是在数据库服务器是不是?


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


加好友 发短信
等级:小狐 帖子:321 积分:1916 威望:0 精华:0 注册:2014/8/24 13:36:00
  发帖心情 Post By:2015/11/15 21:50:00 [只看该作者]

以下是引用浙江仔在2015/11/15 15:11:00的发言:
琢磨琢磨再提问,谢谢

游哥的提议对我来说有点难度,呵呵
在你的网页服务器上安装一个MsSql,用于操作数据库服务器
MsSql是不是只建立几个存储过程?数据的话还是在数据库服务器是不是?

嗯。

 

也可以说,是在狐表项目和数据库之间加了一个中间用户,由它来转手。

 

只不过这个中间用户选的是mssql的存储过程,而不是基于WCF、WebService之类的服务程序

 

这样选择,我想对一般的狐表用户还是合适的。

 

 

 

要将UDPclient做成可靠传输  o(∩_∩)o...哈哈

 

 


 回到顶部