2015-12-25 26 views
6

benim DB içine bazı veri eklemek için çalışıyorum (Microsoft SQL Server)veritabanı açamıyor - giriş tarafından isteniyor - neden DB'mize bağlanamıyorum?

bağlantım açılmaz ve bu mesajı alıyorum:

açılamıyor veritabanı \ "[Satış ve Envanter Sistemi] \ "giriş tarafından talep edildi. Giriş başarısız. \ R \ nLogin, 'Mostafa-PC \ Mostafa' kullanıcısı için başarısız oldu.

burada benim kodudur:

public void InsertProduct(List<string> _myName, 
         List<int> _myAmount, 
         List<int> _myPrice, string _date) 
{ 
string connectionString = @"Data Source=MOSTAFA-PC;Initial Catalog=[Sales and Inventory System];Integrated Security=True"; 
string query = @"INSERT INTO dbo.product(Name, Amount, Price, [date]) 
          VALUES(@Name, @Amount, @Price, @Date);"; 

using (SqlConnection Con = new SqlConnection(connectionString)) 
using (SqlCommand Cmd = new SqlCommand(query, Con)) 
{ 

    Cmd.Parameters.Add("@Name", SqlDbType.NVarChar); 
    Cmd.Parameters.Add("@Amount", SqlDbType.Int); 
    Cmd.Parameters.Add("@Price", SqlDbType.Int); 
    Cmd.Parameters.Add("@Date", SqlDbType.DateTime).Value = Convert.ToDateTime(_date); 

    Cmd.Connection = Con; 
    Con.Open(); 

    int recordsToAdd = _myName.Count(); 
    for(int x = 0; x < recordsToAdd; x++) 
    { 
     Cmd.Parameters["@Name"].Value = _myName[x]; 
     Cmd.Parameters["@Amount"].Value = _myAmount[x]; 
     Cmd.Parameters["@Price"].Value = _myPrice[x]; 
     Cmd.ExecuteNonQuery(); 
    } 
} 

yaptığım her şey ve ben her yerde aradım. Nedenini anlayamıyorum.

+2

Hangi hata iletisini alıyorsunuz? Örneği SSMS'ye bağlamayı denediniz mi? Kodun erişimi olan kimlik bilgilerini kontrol ettiniz mi? –

+0

neden bağlantı dizesinde 'Kullanıcı Kimliği = xyz; Parola = xyz;' bildirmediniz? – pedram

+0

VEYA bağlantı dizesini web.config dosyasında ayarlayabilir ve daha sonra bu kodun 'System.Configuration.ConfigurationManager.ConnectionStrings [" CS "]' gibi kod tarafına girebilirsiniz. – pedram

cevap

3

Hatanızı çözmek için aşağıdakileri kontrol etmeniz gerekiyor gibi görünüyor.

1.Denetleme izni. Kullanıcının bu Database erişiminin olması gerekir. Most Important One

2. Ayrıca kod tarafına App.config key erişmek için daha iyi olurdu. Yani bağlantı dizesini app.config'da belirtin ve aşağıdaki gibi ayarlamayı deneyin.

string connectionstring = System.Configuration.ConfigurationManager.ConnectionStrings["keyname"] 

3. Ayrıca SSMS yılında örneğini bağlanmayı deneyin gerekiyor ve bu başarısız edilmemelidir.

Bu Link, daha fazla bilgi için size yardımcı olabilir.

0

Hatası, ilgili izne ilişkintir. Örnek ve DB'deki hesabın iznini kontrol edin. Ve DB'nin sunucuda gerçekten var olduğundan emin olun. Bazen, izin hakkında şikayette bulunur ancak DB bile mevcut değildir.