Есть как минимум два способа сделать это.Один из них - использование таблиц метаданных базы данных , другой - использование объектов управления SQL . В обоих случаях имеется много данных, поэтому вам действительно нужно знать, чего вы хотите.Например, вот как вы могли бы получить упомянутое вами свойство «Только для чтения».
Использование SqlCommand для метаданных
using (SqlConnection cnn = new SqlConnection("Data Source=.;Initial Catalog=master;Integrated Security=SSPI;"))
{
SqlCommand cmd = new SqlCommand("SELECT is_read_only FROM sys.filegroups",cnn);
cnn.Open();
var isReadOnly = cmd.ExecuteScalar();
Console.WriteLine(isReadOnly );
}
ИспользованиеSMO
using System;
using Microsoft.SqlServer.Management.Smo;
namespace SMO_Test
{
class Program
{
static void Main(string[] args)
{
Server srv = new Server(); //Connection to the local SQL Server
Database db = srv.Databases["master"];
foreach (FileGroup fg in db.FileGroups)
{
Console.WriteLine(fg.ReadOnly);
}
}
}
}