2009-04-19 20 views
5

Ben C# veri varsa ad, boyut ve veri türü ve boş/değil null, imzasız, otomatik artım gibi ekstra bilgi, varsayılan değerler de dahil olmak üzeremysql kullanarak C# kullanarak tüm ayrıntıları nasıl edinilir?

1) Komple kolon tanımlarını kullanarak mysql tablo için bu bilgi almak istiyorum tipi numaralandırma olduğunu kabul değerler

2) Tüm kısıtlamalar -

3 Benzersiz İlk/Yabancı/Kontrol /) Bütün indeksleri

Ben sütun karşı "tablo_adı açıklamak" sorgusunu kullanarak temel bilgileri ilgili alabilirsiniz

veri tabanı.

Ancak bu bilgilerin tümü nasıl alınır?

Saygılarımızla, Anjan

cevap

6

sadece sütun tanımları almak için ... Örneğin

, INFORMATION_SCHEMA karşı sorguları atmak:

SELECT TABLE_NAME 
     , COLUMN_NAME 
     , DATA_TYPE 
     , CHARACTER_MAXIMUM_LENGTH 
     , CHARACTER_OCTET_LENGTH 
     , NUMERIC_PRECISION 
     , NUMERIC_SCALE AS SCALE 
     , COLUMN_DEFAULT 
     , IS_NULLABLE 
FROM INFORMATION_SCHEMA.COLUMNS 

ek bilgi almak için the information schema tables bir göz atın.

Yardım edin.

2

Sen SqlDataReader.GetSchemaTable() yöntemini kullanabilir ve bu 1) seçeneği için sadece cevap, ama bu sizin bağlantı dizesinin sahiptir varsayılan veritabanı (şema) seçeneği ayarlarsanız şemanızda, aynı bağlantı kullanarak yapılabilir. (INFORMATION_SCHEMA şemasına ayrı bir bağlantı oluşturmanıza gerek yoktur).

Bu yöntem hakkında daha fazla bilgi here bulunabilir ve örnek nasıl kullanılır here.

Şemalarınız veya veritabanlarınız hakkında her şeyi almak için SqlClientMetaDataCollectionNames sınıfını kullanın.

sınıfı hakkında

diğer bilgiler here ve örnek bulunabilir o here

nasıl kullanılacağı
İlgili konular