判断哪个数据库可以连接

jcyluck 2009-04-15 04:55:31
一个带SQL数据库的WINFORM程序
可以由用户自己建立数据库
在建立数据库后将这个数据库名称,及其他登录信息写入某文件

问题:
1.如果用户删除了该文件?需要重新连接服务器,怎么判断这个服务器里有用户需要的数据库呢?重新连接时由用户再选择一次吗?
2.如果在服务器中建立了两个不同名称的数据库(都是由程序创建的),在登录时是否需要再选择一次呢?

这个问题不是没有办法
只是集思广益

大家有没有用到sysdatabases表,修改SID的值?
...全文
146 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jcyluck 2009-04-16
  • 打赏
  • 举报
回复
越来越感觉CSDN上越来越多的人只是为了蒙混那一点点可怜的技术分
而不是专注于解决问题
我敢保证8楼连我的原贴都没看完
mqfwjp 2009-04-16
  • 打赏
  • 举报
回复
程序初始化时检查,如果文件删除了就让用户选择不就完了,要不然你还要那个文件干什么啊
jcyluck 2009-04-16
  • 打赏
  • 举报
回复
4,5,6楼的回答貌似不着边
可能我没有说清楚。

首先,程序连接数据库的配置信息肯定需要一个文件来储存(比如:LOGIN.INI),这个文件在安装数据库时就会自动创建。
但是后来用户不小心把这个配置文件删除了
这时候需要再重新连接数据库并恢复配置文件(LOGIN.INI)吧
问题是重新连接时,怎么判断你所连接的服务器上有你需要的已经建立的数据库呢?
jcyluck 2009-04-16
  • 打赏
  • 举报
回复
多谢楼上二位有思考的回答
其实方案早就有了,就是删掉文件后让用户选择一次数据库(但大多用户可能不懂这个,加个说明文件就行)另一个就是在数据库系统表中加入一个识别键(但如果在一个服务器上安装了两个不同名的数据库,就有点麻烦),最后还是选择了前者。

我觉得这个问题应该做过数据库的都会碰到
我的做法有点烦锁
想长点见识而已
应该还有其他更好的方法吧
「已注销」 2009-04-16
  • 打赏
  • 举报
回复
[Quote=引用楼主 jcyluck 的帖子:]
一个带SQL数据库的WINFORM程序
可以由用户自己建立数据库
在建立数据库后将这个数据库名称,及其他登录信息写入某文件

问题:
1.如果用户删除了该文件?需要重新连接服务器,怎么判断这个服务器里有用户需要的数据库呢?重新连接时由用户再选择一次吗?
2.如果在服务器中建立了两个不同名称的数据库(都是由程序创建的),在登录时是否需要再选择一次呢?
[/Quote]

針對樓主的第一個問題,我覺得肯定是要讓用戶再次選擇的。我們不妨這樣想一下,我們在winform中進行伺服器鏈接的配置時候,那些選擇資料來源、伺服器名稱、使用者名稱、密碼什麽的不是都要重新設置么?當我們設好后,這些資料肯定是存放在某個文件中的,正如你的login.txt,要是這個文件不存在了,那剛剛要題寫的地方肯定就為空了。
第二個問題,LZ所說的,我理解的不是很清楚。不過我覺得,通路只有一個,出現岔口,肯定是要解決的,要是程序沒有給出方案,用戶就得去手動解決,您覺得呢?
以上只是個人認識,討論學習為主,也可能理解偏差,閱者見諒。
niitnanfeng 2009-04-16
  • 打赏
  • 举报
回复
这个问题说是问题确实是大问题,说不是问题也不是问题。如果用户自己要乱删除东西估计也没多少办法可以做到完美。出问题了唯一的办法就是重新弄下,就跟我们使用的操作系统样的,你要做的完美点就弄个修复功能。否则是很郁闷的事情。
duwei1116 2009-04-15
  • 打赏
  • 举报
回复
楼主的想法本末倒置,如果用户懂数据库就没必要写应用了。
对于楼主的想法可以这样实现:把数据库的配置文件写到xml或ini或txt里,用的时候查询是否存在,如果不存在重新建立。
Bkdzz 2009-04-15
  • 打赏
  • 举报
回复
1.要删除此文件,那肯定登录信息是没有了啦,所以根本谈不上连接数据库了,只有得到此文件才能连数据库。
2.你只要根据主文件信息来选择这两个数据库的资源,多出来的那个就不用了,你也不必要操作它的什么资源了。
蓝海D鱼 2009-04-15
  • 打赏
  • 举报
回复
[Quote=引用楼主 jcyluck 的帖子:]
一个带SQL数据库的WINFORM程序
可以由用户自己建立数据库
在建立数据库后将这个数据库名称,及其他登录信息写入某文件

问题:
1.如果用户删除了该文件?需要重新连接服务器,怎么判断这个服务器里有用户需要的数据库呢?重新连接时由用户再选择一次吗?

>>>>>>>>>>>>>>>>>>>这个如果删除了文件 ,那么登录信息就没有了,你也就根本连不上数据库了,用户必须重新创建这个文件的.

2.如果在服务器中建立了两个不同名称的数据库(都是由程序创建的),在登录时是否需要再选择一次呢?
>>>>>>>>>>>>>>>>>>>如果创建了2个数据库,应用程序 只是根据 登录信息文件 去连接数据库的,只要这个唯一,不存在 选择的问题,只是 多出来的浪费


其实 这个问题,是程序设计结构的问题,应该优化一下,
chowyi 2009-04-15
  • 打赏
  • 举报
回复
关注。。。
cja03 2009-04-15
  • 打赏
  • 举报
回复
学习!
zgke 2009-04-15
  • 打赏
  • 举报
回复
你在开始检查下是否正常..列出可以选择的数据库.感觉这样比较好.

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧