> For the complete documentation index, see [llms.txt](https://cnahmet.gitbook.io/asp-net-notlarim/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cnahmet.gitbook.io/asp-net-notlarim/orm-entity-framework-core/veritabani-secme-ve-baglanti-olusturma.md).

# Veritabanı Seçme ve Bağlantı Oluşturma

Entity ve Context sınıflarını oluşturduktan sonra oluşturduğumuz alanları veri tabanına tablo olarak kaydetmek için provider kullanırız.

Kullanmak istediğiniz veri tabanının provider ını indirmek için <https://docs.microsoft.com/tr-tr/ef/core/providers/?tabs=dotnet-core-cli> adresini ziyaret edebilirsiniz. Visual Studio kullanıyorsanız nuget paketi olarak Vs Code kullanıyorsanız cli ile ilgili provider ı yükleyebilirsiniz.&#x20;

Provider ı indirdikten sonra Context sınıfımızın içine o provider ı kullanacağımızı belirtmemiz ve connection string i yazmamız gerekmektedir.&#x20;

#### MSSQL Server Provider Kurulumu

```
public class ShopContext:DbContext
{
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlServer(@"Data Source=serveradı; Initial Catalog=dbadı; Integrated Security=SSPI");
        }
}
```

#### MySql Provider Kurulumu

```
public class ShopContext:DbContext
{
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseMySql(@"Server=localhost;port=3306;database=dbadı;user=xxx;password=xxx");
        }
}
```

#### SqLite Provider Kurulumu

```
public class ShopContext:DbContext
{
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlite("Data Source=dbadı);
        }
}
```

{% hint style="info" %}
**`dotnet ef migrations add MigrationAdı`** ile yeni bir migrations oluşturup,

**`dotnet ef database update`** diyerek veri tabanımızı oluşturabiliriz.&#x20;

Eğer veri tabanı ilgili veri tabanı serverında yoksa yeni oluşturulur, varsa da değişiklikler üzerine tanımlanır.
{% endhint %}
