我现在有一个窗体FORM2,我在这里面有4个文本框,分别是:1.服务器名称:   2.登录名称:  3.登录密码:   4.数据库名称:
 在我的Form1窗体里有一段连接字符串是:
    public static string sqlstr1 = "Data Source="+Form2.ipstr+";Initial Catalog="+Form2.dbstr+";uid="+Form2 .sastr+";pwd="+Form2.pwdstr;  为什么我连接的是时候提醒我:“用户(null)登录失败。原因:未与信任的SQL SERVER连接相关联。”  我应该如何解决啊??

解决方案 »

  1.   

    "Data Source="+Form2.ipstr+";Initial Catalog="+Form2.dbstr+";
    我也尝试过,总之用楼主的代码我是从没成功过的,问题多多,我也不知道为什么,我连都是用
    server =? database = ? 才能连上的,
      

  2.   

    先说问题吧,
    首先你使用static string明白你是什么意思,这个字串要留着用,是吧?楼主注意看一下,你的Form2是一个类,没有实例化,那么Form2.XXX存在吗?它当然会取出NULL值。错误提示没错,只是问题不在SQL信任连接上。在你的串就没有构建好。如果你使用的是NET 2.0那这个问题,你应该使用用户级User设置来保存该字串,不用什么static会比较好
    如this.Properties.YourDBConnetionString=XXXX;
      

  3.   

    我估计是我的FORM2窗体里的各控件上的值没有保存上,因为我这个FORM2是单击一个按钮才显示出来的,然后我就在相应的控件上输入各名称,完了就通过static来传递给FORM1中的字段??是不是不行啊????
      

  4.   

    是你的sqlserver设置的原因,你在企业管理器中右击(local),然后选择属性》》安全性》》然后选择sql server 和windows 最好点击确定,即可。
      

  5.   

    你在Form1里能取到Form2里的值吗?
    为什么要这么做?为什么不把连接字符串放到config文件中
      

  6.   

    你SQL是如何设置的?
    如果是使用WINDOWS安全模式,则需要使用“Integrated Security=true”
    另外,你的ipstr等是字符串变量呢还是TextBox控件,如果是控件,则要使用ipstr.text
    string connstr = "Data Source=" + Form2.ipstr + ";Initial Catalog=" + Form2.dbstr + ";" + (Form2..IsWindows.Checked ? "Integrated Security=True" : ("User ID=" + Form2 .sastr + ";PassWord=" + Form2.pwdstr));
      

  7.   

    .net 技术交流群  欢迎大家的加入
          高手为您解疑
    群号:11623794
      

  8.   

    用sa登陆的就写4个完了,server,uid,pwd,database,其他不写.
      

  9.   

    Form2.ipstr是什么意思?
    如果ipstr是文本框的名称的话,应该使用ipstr.Text
      

  10.   

    我觉得问题不在sqlserver连接上。问题应该在form2的传值上。form2实例化了吗?
      

  11.   

    如果ipstr是文本框的名称的话,应该使用ipstr.Text
    应该是这个 我认为
      

  12.   

    大家 能不能用MSN交流阿   我也可以向大家学习啊
      

  13.   

    lovvver(www.notsoft.cn) ( ) 信誉:98    Blog  2006-9-19 9:18:31  得分: 0     
    你在Form1里能取到Form2里的值吗?
    为什么要这么做?为什么不把连接字符串放到config文件中===========================================================================LZ 这么做的目的是要在客户端动态的输入连接所需的 server名,database名,用户名,密码.
    因为每个机器会不一样,例如,如果出现象系统重装或IP改变的情况这样,程序连接的时候可以改变,以使的程序对用户来讲,更加友好。LZ是不是这意思???