나는 Access 97 db가 있으며 삽입 후 테이블을 잠그고 잠금을 해제 할 수 있는지 알고 싶습니다.
아니요. 당신이 당신의 Access 97 데이터베이스 파일과 SELECT @@IDENTITY
을 사용할 수 있지만, 그러나, 당신은 여전히 레코드를 추가 할 DAO.Recordset을 사용할 수 있습니다 : 모든 당신의 도움들에 대한
// This code requires the following COM reference in your project:
//
// Microsoft Office 14.0 Access Database Engine Object Library
//
// and the declaration
//
// using Microsoft.Office.Interop.Access.Dao;
//
// at the top of the class file
var dbe = new DBEngine();
Database db = dbe.OpenDatabase(@"C:\Users\Public\test\a97_files\a97table1 - Copy.mdb");
Recordset rst = db.OpenRecordset("SELECT * FROM table1", RecordsetTypeEnum.dbOpenDynaset);
rst.AddNew();
// new AutoNumber is created as soon as AddNew() is called
int newID = rst.Fields["ID"].Value;
rst.Fields["textCol"].Value = "Record added via DAO Recordset.";
rst.Update();
Console.WriteLine("Row added with ID = {0}", newID);
rst.Close();
db.Close();
[this] (http://office.microsoft.com/en-us/access-help/set-options-for-a-shared-access-database-mdb-HP005188297.aspx) 및 [this] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). 이것은 확실히 XY 문제입니다. 대신에 해결하려는 문제를 설명해 주시겠습니까? –
레코드를 추가하고 추가 레코드가 추가 된 레코드의 자동 번호를 가져와야합니다 (내림차순으로 정렬 됨). 문제는 삽입하고 검색 할 때 외부에서 다른 것부터 추가 할 수 있습니다 (잘못된 것입니다. autonumber) – user1559524
[This (http://www.mikesdotnetting.com/Article/54/getting-the-identity-of-the-most-recently-added-record) 도움이 될 수 있습니다. 지정한 문제를 해결하는지 확신 할 수 없습니다. 그것을 해결할 가능성은 낮습니다. 하지만 적어도 orderby 쿼리는 피할 수 있습니다. –