以文本方式查看主题 - 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...哈哈
|