搭建论坛《搭建之星》论坛数据库交流 → 关于SQL语句中的文件名问题


  共有2872人关注过本帖树形打印

主题:关于SQL语句中的文件名问题

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


加好友 发短信 搭建爱好者
等级:爱好者 帖子:238 积分:1173 威望:1 精华:0 注册:2006-12-28 10:22:07
关于SQL语句中的文件名问题  发帖心情 Post By:2008-3-6 17:01:53

如附件所示,请先将附件解压到一个文件夹里,如ABC。。。

问题如下:如果直接在IPD文件上双击,可以正常运行;但如果通过搭建之星的“打开”,则提示出错,问题就出在SQL语句中的文件名上。

即使在搭建的运行环境中,将用户目录设置为该文件夹,打开仍然出错。。

 下载信息  [文件大小:   下载次数: ]
点击浏览该文件:


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  2楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建爱好者
等级:爱好者 帖子:238 积分:1173 威望:1 精华:0 注册:2006-12-28 10:22:07
  发帖心情 Post By:2008-3-6 17:11:47

进一步测试发现,通过搭建之星的“打开”,有时又不出错,非常奇怪。

出错时的提示信息表明,搭建将SQL语句中所涉及的数据库文件默认到搭建之星的安装目录下了。此问题必须解决,因为跨文件的数据表查询操作是很常见的。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
admin
  3楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建官方
等级:管理员 帖子:5504 积分:20561 威望:9 精华:5 注册:2002-4-5 17:08:42
  发帖心情 Post By:2008-3-6 18:24:45

我这里反复打开“文件”和“数据表”都没有问题。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
FSJM
  4楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:2323 积分:6885 威望:9 精华:0 注册:2002-10-23 13:50:52
  发帖心情 Post By:2008-3-6 18:43:21

是当前缺省 目录的问题;".\" 指当前目录下,如果当前目录改变就会出错;最好改绝对目录,以利于多用户操作。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  5楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建爱好者
等级:爱好者 帖子:238 积分:1173 威望:1 精华:0 注册:2006-12-28 10:22:07
  发帖心情 Post By:2008-3-6 23:51:36

以下是引用FSJM在2008-3-6 18:43:21的发言:
是当前缺省 目录的问题;".\" 指当前目录下,如果当前目录改变就会出错;最好改绝对目录,以利于多用户操作。

您说是缺省目录的问题,可是,如果直接双击IPD文件,它的运行是正常的啊。这又该如何解释呢?

只有通过星的“打开”时才会出错,而且有时出错,有时不出错。出错时的提示信息表明,系统反而把搭建之星的安装目录作为默认路径了。是不是搭建的“运行环境”设置需要再作改进?

改绝对目录是不行的,因为我无法确认用户会把这个定制的应用系统安装在哪个目录下。但在当前这个应用系统中,data这个子目录是必须存在的,所以,必须用.\

就目前这个例子,不知是否有更好的解决办法?


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
FSJM
  6楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:2323 积分:6885 威望:9 精华:0 注册:2002-10-23 13:50:52
  发帖心情 Post By:2008-3-7 8:43:00

打开一个目录,当然是但前目录,点击 IPD 肯定执行正确。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  7楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建爱好者
等级:爱好者 帖子:238 积分:1173 威望:1 精华:0 注册:2006-12-28 10:22:07
  发帖心情 Post By:2008-3-7 9:51:14

同样的一个文件,直接执行不出错,通过星的“打开”有时出错、有时不出错。这只能说明搭建在这方面还有不完善的地方。

希望作者不要总是强调文件目录的问题,因为,您无法解释:为什么有时候通过星“打开”时又会正常运行?

所以,我总觉得,搭建之星在内部处理“安装目录”和“项目所在目录”时有欠妥的地方。比如,在设置“用户项目目录”以后,按理说打开一切文件时都会从这个默认目录中去找,但如果你插入的是图片、声音等文件,首先打开的目录竟然还是搭建之星的安装目录。这个问题我早就发现了,只是因为它并不影响正常使用,所以一直就没有反映,麻烦就麻烦点吧。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
FSJM
  8楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:2323 积分:6885 威望:9 精华:0 注册:2002-10-23 13:50:52
  发帖心情 Post By:2008-3-7 15:39:51

因为这个就是“当前目录问题”,“打开文件对话窗” 和 通过“我的电脑”打开系统目录,操作系统对当前目录的处理是不同的,所以结果也不同。

在SQL中使用相对目录,《搭建》对此是处理不了的,《搭建》命令中的“相对目录”,是变成绝对目录后,才使用的;给设计者带来很多方便,这是《搭建》的优点。

如果要在其中要使用相对目录,必须要在运行SQL之前“设置当前目录”,但目前没有,准备这次升级增加;但即使这样设计状态下打开还是会有问题(因为设计状态,是不会运行设置的命令)。

在多“任务状态运行”状态下(同时运行多个程序),也有可能出现问题(因对当前目录的争夺),所以我们不赞成在SQL中使用相对目录。

一定要在SQL运行之前,把相对目录变成绝对目录;目前你只能动态设置。程序最好不要运行在一种假设的状态下。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  9楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建爱好者
等级:爱好者 帖子:238 积分:1173 威望:1 精华:0 注册:2006-12-28 10:22:07
  发帖心情 Post By:2008-3-7 16:04:04

谢谢FSJM的回复,我再好好研究一下。期待着早日看到升级版本。。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  10楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建爱好者
等级:爱好者 帖子:238 积分:1173 威望:1 精华:0 注册:2006-12-28 10:22:07
  发帖心情 Post By:2008-3-7 18:34:24

在FSJM的启发下,通过“文件名称操作”构件,动态取得数据库文件的绝对目录,然后再赋值给SQL语句,问题彻底解决。

只是这样显得麻烦了一点点。。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
总数 11 1 2 下一页

返回版面帖子列表

关于SQL语句中的文件名问题








签名