Добавьте подпись для доступа к полям с помощью C#
Я использовал этот код для создания базы данных доступа.
public void CreateAccessAssetFile(string DataSourcePath, string fileName)
{
if (File.Exists(DataSourcePath + fileName))
File.Delete(DataSourcePath + fileName);
//Create Database
string cnnStr = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source="
+ DataSourcePath + fileName + "; Jet OLEDB:Engine Type=5";
var catType = Type.GetTypeFromProgID("ADOX.Catalog");
object o = Activator.CreateInstance(catType);
catType.InvokeMember("Create",
BindingFlags.InvokeMethod,
null,
o,
new object[] { cnnStr });
OleDbConnection cnn = new OleDbConnection(cnnStr);
cnn.Open();
var cmd = cnn.CreateCommand();
cmd.CommandText = "CREATE TABLE TblInfoCompany (fn TEXT , ln TEXT)";
cmd.ExecuteNonQuery();
}
Теперь я хочу добавить caption
два поля, которые, когда мы открываем файл доступа, первое поле будет "FirstName"
а второе поле будет "LastName"
,
Как я могу это сделать?
Благодарю.
1 ответ
Решение
Заголовок не имеет никакого отношения вне MS Access, однако вот некоторые примечания, использующие взаимодействие:
using Microsoft.Office.Interop.Access.Dao;
DBEngine dbEng = new DBEngine();
Workspace ws = dbEng.CreateWorkspace("", "admin", "",
WorkspaceTypeEnum.dbUseJet);
Database db = ws.OpenDatabase(@"z:\docs\test.accdb", false, false, "");
TableDef tdf = db.TableDefs["Table1"];
Field fld = tdf.Fields["Field1"];
Property prp = fld.CreateProperty("Caption", 10, "My caption");
fld.Properties.Append(prp);