以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]有了UDPclient,怎么实现内网数据的连接?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=77283)

--  作者:浙江仔
--  发布时间:2015/11/15 10:33:00
--  [求助]有了UDPclient,怎么实现内网数据的连接?
本月的促销机会很好,也跟领导汇报了,同意购买一套永久开发版!

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

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

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

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

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

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

--  作者:大红袍
--  发布时间: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" 服务器就自动增加一行。


--  作者:游
--  发布时间:2015/11/15 13:56:00
--  

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

建议:

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

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

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

 

基本流程:

 

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

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

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

 

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

 

 

 


--  作者:浙江仔
--  发布时间:2015/11/15 13:59:00
--  

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

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

 

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

 

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


--  作者:大红袍
--  发布时间:2015/11/15 14:29:00
--  

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

 

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

 

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


--  作者:浙江仔
--  发布时间:2015/11/15 15:11:00
--  
琢磨琢磨再提问,谢谢

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


--  作者:游
--  发布时间:2015/11/15 21:50:00
--  
以下是引用浙江仔在2015/11/15 15:11:00的发言:
琢磨琢磨再提问,谢谢

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

嗯。

 

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

 

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

 

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

 

 

 

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