注册 登录
编程论坛 VFP论坛

vf+mysql

bbschf 发布于 2023-07-21 14:46, 1997 次点击
Vf 本地匿名连接mysql数据库information,查询partitions表中所有记录,返回的数据只是与连接的数据库information名称相关的内容,并不是全部
下面的是root身份在控制台查询的
只有本站会员才能查看附件,请 登录

下面是本地匿名查询代码
只有本站会员才能查看附件,请 登录

得到的
只有本站会员才能查看附件,请 登录

此数据库相关联之外的信息全部排除,
何何何解?
此表table_schema是属于数据库information_schema
30 回复
#2
bbschf2023-07-21 14:48
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录
#3
bbschf2023-07-21 14:49
只有本站会员才能查看附件,请 登录
#4
bbschf2023-07-21 14:51
只有本站会员才能查看附件,请 登录
只有44条记录,至于其它数据库一个都冇得
#5
bbschf2023-07-21 15:01
只有本站会员才能查看附件,请 登录

控制台查询到所有数据库名称
#6
bbschf2023-07-21 15:02
只有本站会员才能查看附件,请 登录
但是,匿名只能得到
#7
bbschf2023-07-21 15:02
只有本站会员才能查看附件,请 登录

她,不应该是全部吗?
#8
bbschf2023-07-21 15:21
只有本站会员才能查看附件,请 登录

控制台空密码连接,查询也只有44条记录,和vf一样
#9
bbschf2023-07-21 15:25
只有本站会员才能查看附件,请 登录

本地无用户无密码连接的
#10
bbschf2023-07-21 15:34
只有本站会员才能查看附件,请 登录

暂时确认,匿名连接后,翻看了此数据库所有表,没有任何关于此数据库之外的蛛丝马迹
#11
bbschf2023-07-21 15:37
还有,匿名之后,能连接的只有此数据库,如果查询代码有关于其他数据库的内容,就会跳出登陆对话框。


#12
星光悠蓝2023-07-21 16:09
MySql 只接触点皮毛,用MySQL-Front.exe打开,可以查询全部,用VFP程序代码也能查询全部
只有本站会员才能查看附件,请 登录
#13
星光悠蓝2023-07-21 16:22
以下是引用bbschf在2023-7-21 14:46:01的发言:

Vf 本地匿名连接mysql数据库information,查询partitions表中所有记录,返回的数据只是与连接的数据库information名称相关的内容,并不是全部
下面的是root身份在控制台查询的

下面是本地匿名查询代码

得到的

此数据库相关联之外的信息全部排除,
何何何解?
此表table_schema是属于数据库information_schema


MYSQL还能匿名连接查询?没试过。
#14
bbschf2023-07-21 16:35
以下是引用星光悠蓝在2023-7-21 16:09:25的发言:

MySql 只接触点皮毛,用MySQL-Front.exe打开,可以查询全部,用VFP程序代码也能查询全部

只有本站会员才能查看附件,请 登录

这个就是,本地连接,只有一个默认的数据库;空用户空密码,我理解的是os验证
#15
my23182023-07-23 23:29
解决这个问题必须搞好服务器上数据库与用户权限问题
#16
yiyanxiyin2023-07-24 10:55
mysql不像sqlserver或oracle有本地账号(超级管理员)不需要密码或者任意一个密码即可连接 , mysql不能匿名连接, 除非你在服务器上配置好了账号密码才能不输入账号密码连接, 这个和正常连接是一样的, 不存在匿名不匿名的区别
#17
yiyanxiyin2023-07-24 10:58
你可以查看或者my.ini文件看看里面是否配置了账号密码, 然后看看他的权限, 数据应该和权限有关
#18
bbschf2023-07-24 18:07
回复 16楼 yiyanxiyin
由于某些原因,需要在内网取第三方数据库的某个表的数据,有时可能还需要追加或改写一下,条件是不知道sa的密码,也不知道某个数据库的用户、密码,第三方也不提供。如果有幸遇到第三方支持新建一个用户,Sql2014行不通了,a用户的数据b看不到,b用户的数据a看不到;(这种方式在mysql和oracle至少现在是行得通)。也就是说,只知道网内sql server服务器(和接触到实实在在的物理服务器<就是能进“微机室”>,在服务器安装我的服务程序,其它站点和这个服务程序打交道,这个服务程序和SQLserver打交道,就能很好的解决这个问题;服务程序类似自动化服务中的跨处理序,如果是登录mysql、oracel数据库(是数据库),无论用哪种第三方平台语言连接,都需要密码
#19
bbschf2023-07-24 18:20
原则:

1,上面所说的一切,都是第三方不屌我们的情况下操作

2,不要想着去更改服务器的原有的某些规则

3,不要幻想第三方会提供用户、密码(十5年前就遇到过,医保找我们要密码,我们不提供,我们找他们要,不提供)

大概这就是所谓的第三方数据库“接口”吧
#20
bbschf2023-07-24 18:23
只有本站会员才能查看附件,请 登录

sql server服务器计算机是的服务程序,随SQLserver一起运行
#21
bbschf2023-07-24 18:28
只有本站会员才能查看附件,请 登录

这是要卖给客户的软件;
实际情况是客户不可能了解SQLserver,甚至没听说过这个;所以只能有“确定”和“取消”什么的
#22
bbschf2023-07-24 18:30
只有本站会员才能查看附件,请 登录

不需要填写SQL服务器名称,客户也可能不知道什么是服务器名称,点“查找服务器”,🈶️就有,没有就没有,有多个就显示多个
#23
bbschf2023-07-24 18:36
只有本站会员才能查看附件,请 登录

这里显示能查得到的数据库和数据库用户,然后是表,然后是表结构;这里就需要甄别一下,哪个(一般只有一个数据库,已排除系统数据库)个表是你所需要的,就选哪个,然后根据需要,选取哪些字段名、、、要么“确定”要么取消
#24
my23182023-07-24 18:40
这种情况,加费用自己建一个服务器,把需要的数据表复制到可控服务器。
#25
bbschf2023-07-24 18:40
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

完成之后设置自己需要的运行规则设置一下就可以了。sql 36个字段类型系统已作判断
#26
bbschf2023-07-24 18:51
只有本站会员才能查看附件,请 登录

最后就是这样,获取第三方信息,如his的门诊缴费或者住院病人的登记信息,在超声或内窥镜什么的搞一下下,比较完整的信息根据条件是否要在his修改一下;病人有什么病需不需要向另一个(如病案管理之类)追加一条病案的登记信息等。

以上的操作,SQLserver支持,不存在权限之类的问题;
哪帕是第三方同意另建一个新用户都行不通,某些情况下sa都不得行

my SQL、oracle提供新用户是阔以滴
#27
my23182023-07-24 18:56
你要读取的第三方信息的服务器应该是甲方医院可以直接操作吧。直接加一个有读取权限的用户就可以了。一般不会给sa权限的,那样数据库太不安全了。
#28
bbschf2023-07-24 19:52
SQL2014权限更细,
a表的用户a1、a2对表a有同样的权限,基本上各自为营,互相之间不吊;sa建的库,用户a1、a2,a1建的表,sa删除不了a1插入的数据,也删除不了表,只能删除用户和数据库
#29
bbschf2023-07-24 20:13
再说了不要幻想第三方给医院额外提供一个访问用户
2014的权限估计是按照人的管理模式搞的。比如a、b分别租了老板的仓库,a在仓库中画一块区域供a、b使用,a放的苹果,b放的栗子,a、b互相之间不能动,可以看;老板来了,想吃苹果栗子,不行。最后老板生气不租了
#30
my23182023-07-25 09:00
用户的权限是可以调整的
#31
yiyanxiyin2023-07-25 09:49
目前的情况看上去是第三方没授权给客户, 即使你通过其他方式去访问数据库, 也存在非法访问的问题,  明摆着客户和第三方存之间存在着不信任关系, 最好的办法就是通过客户去协调第三方, 走正规途径, 否则直接给客户说:“做不了”, 如果没得到授权,你又做了, 反而费力不讨好, 如果以后有什么纠纷你还要被牵连
1