none
老师们:晚上好, 我这问题有救吗? 谢谢。 RRS feed

  • 问题

  • Imports System.Data
    Imports System.Data.SqlClient
    Public Class Form1
        Inherits System.Windows.Forms.Form
        Dim objconnection As SqlConnection = New  _
        SqlConnection("server=local;database=QQ;User id=qiu;password=ming;")
        Dim objdataadapter As SqlDataAdapter = New SqlDataAdapter("select qqid,nickname,address" & "from baseinfo", objconnection)
        Dim objdataset As DataSet
        Dim objdataview As DataView
        Dim objcurrencymanager As CurrencyManager
        Private Sub filldatasetandview()
            objdataset = New DataSet()
            objdataadapter.Fill(objdataset, "baseinfo")
            objdataview = New DataView(objdataset.Tables("baseinfo"))
            objcurrencymanager = CType(Me.BindingContext(objdataset), CurrencyManager)

        End Sub

    (注:上面有下线的代码就是弹出以下问题。)


     " 在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)"
     


    语言是一门技术,编程即是艺术!
    2010年5月13日 13:48

答案

  • Run 'select @@servername' on sql server you like to connect to, and replace 'local' with the result you get in connection string.
    • 已标记为答案 明臣 2010年5月16日 1:52
    2010年5月16日 1:15

全部回复

  • Replace local with real sql instance name in SqlConnection.
    2010年5月14日 3:25
  •   老师 您好:

      谢谢您的回答,能不能说清楚点呢!


    语言是一门技术,编程即是艺术!
    2010年5月14日 3:42
  • >> SqlConnection("server=local;database=QQ;User id=qiu;password=ming;")

    Put in sql server name you like to connect to in place of 'local'

    2010年5月14日 3:53
  • >> SqlConnection("server=local;database=QQ;User id=qiu;password=ming;")

    Put in sql server name you like to connect to in place of 'local'


    如果程序和 sql server 在同一台电脑上, 并且是连接默认实例, 那么将 local 更改为 localhost, 或者是不指定值.
    2010年5月14日 4:27
  • Hi,

    在sql server configuration manager 里面看看named pipes 有没有启用,看看下面这个,比较全面。

    http://blog.csdn.net/xazzb/archive/2007/11/08/1873843.aspx

    用搜索引擎多搜搜错误信息,网上有很多资源。

    2010年5月14日 14:09
  • 老师 您好:

          您说的已经早前试过了。没用...


    语言是一门技术,编程即是艺术!
    2010年5月16日 0:57
  • 老师 您好:

        您说过我也先前试过了,没用...


    语言是一门技术,编程即是艺术!
    2010年5月16日 0:58
  • 老师 您好:

          我已经用您的方法将异常情况复制到如下:

    未处理 System.Data.SqlClient.SqlException
      Class=20
      ErrorCode=-2146232060
      LineNumber=0
      Message="在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接)"
      Number=2
      Server=""
      Source=".Net SqlClient Data Provider"
      State=0
      StackTrace:
           在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)    在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)    在 System.Data.SqlClient.TdsParser.Connect(ServerInfo serverInfo, SqlInternalConnectionTds connHandler, Boolean ignoreSniOpenTimeout, Int64 timerExpire, Boolean encrypt, Boolean trustServerCert, Boolean integratedSecurity, SqlConnection owningObject)    在 System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject)    在 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart)    在 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)    在 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)    在 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)    在 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)    在 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)    在 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)    在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)    在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)    在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)    在 System.Data.SqlClient.SqlConnection.Open()    在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)    在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)    在 System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)    在 binding_example.Form1.filldatasetandview() 位置 D:\My Documents\Visual Studio 2008\Projects\绑定实例\绑定实例\Form1.vb:行号 12    在 binding_example.Form1.Form1_Load(Object sender, EventArgs e) 位置 D:\My Documents\Visual Studio 2008\Projects\绑定实例\绑定实例\Form1.vb:行号 48    在 System.EventHandler.Invoke(Object sender, EventArgs e)    在 System.Windows.Forms.Form.OnLoad(EventArgs e)    在 System.Windows.Forms.Form.OnCreateControl()    在 System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)    在 System.Windows.Forms.Control.CreateControl()    在 System.Windows.Forms.Control.WmShowWindow(Message& m)    在 System.Windows.Forms.Control.WndProc(Message& m)    在 System.Windows.Forms.ScrollableControl.WndProc(Message& m)    在 System.Windows.Forms.ContainerControl.WndProc(Message& m)    在 System.Windows.Forms.Form.WmShowWindow(Message& m)    在 System.Windows.Forms.Form.WndProc(Message& m)    在 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)    在 System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)    在 System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)    在 System.Windows.Forms.SafeNativeMethods.ShowWindow(HandleRef hWnd, Int32 nCmdShow)    在 System.Windows.Forms.Control.SetVisibleCore(Boolean value)    在 System.Windows.Forms.Form.SetVisibleCore(Boolean value)    在 System.Windows.Forms.Control.set_Visible(Boolean value)    在 System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)    在 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)    在 System.Windows.Forms.Application.Run(ApplicationContext context)    在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnRun()    在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()    在 Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.Run(String[] commandLine)    在 binding_example.My.MyApplication.Main(String[] Args) 位置 17d14f5c-a337-4978-8281-53493378c1071.vb:行号 81    在 System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)    在 System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)    在 Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()    在 System.Threading.ThreadHelper.ThreadStart_Context(Object state)    在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)    在 System.Threading.ThreadHelper.ThreadStart()
      InnerException:


    语言是一门技术,编程即是艺术!
    2010年5月16日 1:07
  • Run 'select @@servername' on sql server you like to connect to, and replace 'local' with the result you get in connection string.
    • 已标记为答案 明臣 2010年5月16日 1:52
    2010年5月16日 1:15
  • 老师 您好:

        你给的网址里面讲的三种方法都试过,  都没用...


    语言是一门技术,编程即是艺术!
    2010年5月16日 1:28
  • 老师 您好:

        您说的我不是很明白... 我笨,看不懂英语。


    语言是一门技术,编程即是艺术!
    2010年5月16日 1:30
  • 老师 您好:

       按照您的方法我试试了,  我用的服务器名是"server=PC-201003121620\SQLEXPRESS;database=QQ;User id=qiu;password=ming;"

    可现在新的问题又出现了,     “用户"qiu"登录失败”


    语言是一门技术,编程即是艺术!
    2010年5月16日 1:39
  • 老师 您好:

         现在终于可以了, 我是经过各位热情老师的帮助下,不断尝试, 上一个问题是,我再另新建一个用户,就可以了。  非常感谢您, 也非常感谢其他老师。 谢谢您们。


    语言是一门技术,编程即是艺术!
    2010年5月16日 1:52