给客户上项目,用sql server作数据库。
    给客户按数据库时,是让客户的sql服务器跟我的程序走,还是我的程序跟着客户的sql服务器走?
    就是说:
    (1)对我的数据库向客户要求一台新机器装sql server+我的数据库,sa密码固化在程序里(不让客户知道),这样客户就失去这台机器的控制权、保障我的数据结构秘密性。——所有的客户都能接受我的要求?有点没道理吧?
    (2)把我的数据库挂在客户已有的sql服务器上建属于自己的帐号、密码,但用sa还是可看到我的数据结构的,能保证客户不把sa密码泄漏给我的竞争对手?——对客户无额外要求,但我的保密性不好。(假设 此项目不大(数据结构明了),但极具潜力,想来追随者必多!^_^)请大家指教,谢谢!

解决方案 »

  1.   

    自己公司搞个服务器,把数据库放在自己这里,不就可以了?你要问微软的工程师,他们会问你是否是正版的sql。呵呵,要不少¥的
      

  2.   

    ——“这种问题要微软工程师回答吗??”
        为什么不能问他们?他们当初设计sql server时是站在哪方的角度思考的?
      

  3.   

    按第二种,数据库的那台限制IP。只有你的机子和客户IP能看到(客户抄下数据结构告诉你竞争对手,那没办法)。就算别人知道密码,也不让看!
      

  4.   

    大家给客户上项目的时候都是哪个方案?(抛开我上面的问题来说)。是不是都是用把数据库挂到客户现成的sql服务器上?
      

  5.   

    用 sql server 2005 compact edition
      

  6.   

    “对SA给出拒绝的权限”能成吗?可以不给sa看某个数据库的权限????怎么作??极盼赐教。
      

  7.   

    to jinglong6511(龙):
         领教领教,其实我只是想弄清楚大家做的项目是不是可以让客户随便打开数据库的。只是与同事意见不同有所争执,才发这个帖子问的。
      

  8.   

    除非你把数据库安装到你的机器上,就算你按照第一种方法,客户还是可以取得你的数据库结构的:在服务器上停止数据库,把库文件拷贝到别的服务器上,安装sqlserver,然后把你的库添加上去就行了。
      

  9.   

    客户有权看到你的数据库,一般来讲是这样。所以,第二种就可以了。但是要注意db server的安全问题,要和客户讲清楚,不要让别人知道诸如sa/admin的密码。竞争对手就不用考虑了,还没听说过哪家公司因为数据结构被竞争对手搞到,而完蛋的。他随便找一个测试版,就一切OK了。