Не удалось войти в базу данных - PullRequest
0 голосов
/ 14 января 2012

Я использую следующий код для резервного копирования моей базы данных ...

Dim con As SqlConnection
Dim cmd As SqlCommand
con = New SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=LIC;Trusted_Connection = yes")
cmd = New SqlCommand("BACKUP DATABASE LIC to disk='C:\Backup\ICLS.bak'", con)
con.Open()
cmd.ExecuteNonQuery()
con.Close()

Но я получаю эту ошибку

Cannot open database "LIC" requested by the login. The login failed. Login failed for user 'mono-PC\mono'.

Любая помощь приветствуется.

1 Ответ

1 голос
/ 14 января 2012

Попробуй это. Он все равно потерпит неудачу, но напечатает число (состояние исключения). Ниже приведена таблица, в которой перечислены возможные состояния и причины их возникновения (от http://blogs.msdn.com/b/sql_protocols/archive/2006/02/21/536201.aspx и http://msdn.microsoft.com/en-us/library/ms366351.aspx). См. Эти ссылки для разрешения.

try
  Dim con As SqlConnection
  Dim cmd As SqlCommand
  con = New SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=LIC;Trusted_Connection = yes")
  cmd = New SqlCommand("BACKUP DATABASE LIC to disk='C:\Backup\ICLS.bak'", con)
  con.Open()
  cmd.ExecuteNonQuery()
  con.Close()
catch e as SqlException
    Console.WriteLine("State: " & e.State)
end try

Возможные состояния:

ERROR STATE ERROR DESCRIPTION
2 and 5     Invalid userid
6           Attempt to use a Windows login name with SQL Authentication
7           Login is disabled, and the password is incorrect
8           Password mismatch
9           Invalid password
11 and 12   Valid login but server access failure
13          SQL Server service paused
18          Change password required
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...