И решить эту проблему в VBA с использованием DAO hereMS Access OLEDB свойства столбцов
Использование механизма OLEDB, я создал функцию, которая может выглядеть до рекордного значения. Однако он получает только исходную ценность. Мне нужно найти значение свойства столбца под названием «Row Source»
Может кто-нибудь объяснить мне, как найти значение внешнего ключа с помощью OLEDB
Ниже моя функция для традиционного смотреть вверх запроса.
string IDatabase.LookupRecord(string column, string table, string lookupColumn, string lookUpValue)
{
OleDbCommand cmdLookupColumnValue = new OleDbCommand();
string sqlQuery = "SELECT [" + table + "].[" + column + "] " +
"FROM [" + table + "] " +
"WHERE [" + table + "].[" + lookupColumn + "] = '" + lookUpValue + "'";
cmdLookupColumnValue.CommandText = sqlQuery;
cmdLookupColumnValue.CommandType = CommandType.Text;
cmdLookupColumnValue.Connection = connection;
string result = "";
try
{
result = cmdLookupColumnValue.ExecuteScalar().ToString();
}
catch(Exception ex)
{
MessageBox.Show("Query is not valid :" + ex.ToString());
}
return result;
}
EDIT Я нашел следующий код here Его ближайший Ive получил до сих пор. Он получает свойства столбца, такие как столбец Описание, но он не работает для строки Source. Есть идеи?
public void Test()
{
string columnName = "Main Space Category";
ADOX.Catalog cat = new ADOX.Catalog();
ADODB.Connection conn = new ADODB.Connection();
conn.Open(connectionString, null, null, 0);
cat.ActiveConnection = conn;
ADOX.Table mhs = cat.Tables["FI - ROOM"];
var columnDescription = mhs.Columns[columnName].Properties["Description"].Value.ToString();
MessageBox.Show(columnDescription);
conn.Close();
}
Отлично, я не понимал, что DAO доступен для C#. – MichaelTaylor3D