连接到数据库

本文关键字:数据库 连接 | 更新日期: 2023-09-27 18:16:33

今天早上我遇到了一个大问题。我的SQL Server昨天有一个巨大的错误,我不得不重新安装它。

在我的客户端,当我尝试登录,并把密码也我总是收到这个错误:

对象引用未设置为对象的实例。

描述:在执行过程中发生未处理的异常当前的web请求。请查看堆栈跟踪中有关错误及其起源的更多信息代码。

Exception Details: System。NullReferenceException:对象引用不存在设置为对象的实例。

源错误:

    public User GetUser(string username, string password)
    {
        // Get the User
        dynamic queryStringLogon = ("SELECT Login, Id, Password, BugLogin, Guid FROM Users WHERE (Login LIKE '" + username + "') ");
        SqlCommand theCommand = new SqlCommand(queryStringLogon);
        SqlDataReader reader = GetData(theCommand);
Line 31:             User user = null; 
Line 32:  
Line 33:             if (reader.HasRows) 
Line 34:             { 
Line 35:                user = new User();

就像没有从我的sql数据库返回…这是我的连接字符串。我真不知道它出了什么问题。

<connectionStrings>
   <remove name="LocalSqlServer" />
   <add name="LocalSqlServer" 
        connectionString="data source=.'SQLEXPRESS;Initial Catalog=DataUi;Integrated Security=SSPI;User Id=clientportaluser;Password=aspen1aspen1;User Instance=true" 
        providerName="System.Data.SqlClient" />
</connectionStrings>

我还为clientportaluser设置了数据读取和数据写入权限。

 private SqlDataReader GetData(SqlCommand command)
    {
        command.Connection = Connection;
        //using (Connection)
        //{
        try
        {
            if (Connection.State == System.Data.ConnectionState.Closed)
            {
                Connection.Open();
            }
            SqlDataReader reader = command.ExecuteReader();
            return reader;
        }
        catch (Exception e)
        {
            return null;
        }
        finally
        {
            // Connection.Close();
        }
        //}
    }
    private SqlConnection Connection
    {
        get
        {
            if (_sqlConnection == null)
            {
                _sqlConnection = new SqlConnection(_conString);
            }
            return _sqlConnection;
        }
    }
    private string _conString;
    private SqlConnection _sqlConnection;

修正:错误是用户实例设置为false。

连接到数据库

为什么你同时拥有"集成安全=SSPI;"answers"用户Id=clientportaluser;密码=aspen1aspen1;

如果你得到错误的onconnect(请张贴异常,如果一个生成),那么很可能,当你恢复你的数据库,你没有添加你的用户帐户作为一个有效的用户。请检查您的用户是否有权访问数据库,并有足够的权限来执行/选择您正在尝试做的任何事情。

如果您正在使用Sql Server Management Studio,请查看Security分支

如果启动SQL Profiler,是否有任何东西被发送到数据库?您可以通过Management Studio访问数据库吗?