我给公司做的程序都不是三层的,只是在公司的局域网内用的。现在公司准备把公司的局域网用一个核心第三层交换机划分成几个vlan子网,各个vlan子网在不同的网段,各个vlan子网之间的通信要经过这个第三层交换机,程序的数据库在其中一个vlan,我试了一下,我的程序都访问不到数据库了,我不知道是网络配置有问题呢,还是非三层架构的程序不能跨越三层交换机访问其他vlan子网数据库.我在程序里重新设置ADOconnection连接属性,也无法连接了. 是不是在这种情况,我的程序都要改成三层架构呀?请各位高手指条明路.谢谢!

解决方案 »

  1.   

    这个是网络问题,与程序无关吧如果你的机器可以访问其他vlan的机器的话,那么你的程序也就没有问题了
      

  2.   

    如果你能ping通你的SQL Server服务器,那么你的程序就应该没有问题,至少是可以这么做的。但问题上你现在连网络都还没有搞通。所以问题并不在你的程序上。
      

  3.   

    能ping通的,我的程序是delphi5开发的,课户端的网关设成那个三层交换机相应的端口,我重新打开源代码,想重新设置ADOConnection 的Connectionstring属性,
    就是连不通数据库,但是在服务器下拉框里能看到那台服务器名字,就是选不了里面的数据库,
    测试连接也连接不成功
      

  4.   

    我重新设置ADOConnection的connectionstring时,连接提示的错误是:无法连至服务器leader-3
    ODBC:讯息0,层级16,状态1
    [Microsoft][odbc SQL server Driver]过期终止兄弟们帮忙帮到底呀。
      

  5.   

    有没有 高手再帮一下忙呀。我只想知道到底不改三层架构行不行,要改很麻烦的。我只是想知道非三层结构在几个vlan之间能不能跨越三层交换机访问到sql server 数据库。仅仅这个问题,又不要你们提供什么原代码,干吗还那么吝啬呀,各位老大,解决不了问题,叫我怎么结帖呀。结了又的再提问。
      

  6.   

    SQLSERVER是可以跨越VLAN的,要看你的VLAN是怎么架设的了。权限的设置是否影响了数据库的访问呢。如果没有VLAN,SQLSERVER想跨越三层交换机的网络也得设置一下,具体看SQLSERVER的联机帮助。
      

  7.   

    权限的设置是否影响了数据库的访问呢。如果没有VLAN,SQLSERVER想跨越三层交换机的网络也得设置一下.N对