我们需要为访问数据库编写什么查询来获取特定表的主键列名 .
我使用c#并访问其文件格式为.mdb的数据库 . 我正在使用OleDbConnection类 .
我想使用查询获取访问数据库中的主键列名称,类似于sys.information_schema中的select columnName . 此查询与sql server一起使用 . 我想查询类似于ms访问的东西 .
谢谢 .
这可能会有所帮助:http://gsraj.tripod.com/dotnet/ado_net/ado.net_retrieving_database_metadata.html
与此同时:http://msdn.microsoft.com/en-us/library/system.data.datatable.primarykey.aspx
评论后编辑:我错了:
SELECT MSysObjects.* FROM MSysObjects
你将不得不谷歌细节tho,得走了......
DataTable cols = con.GetOleDbSchemaTable(OleDbSchemaGuid.Constraint_Column_Usage,...
http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbconnection.getoledbschematable%28v=vs.71%29.aspx
http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbschemaguid.constraint_column_usage%28v=vs.71%29.aspx
我实际上已经明白了 . 就像Awadhendra所说的那样,我必须创建一个隐藏的主要列,这就是我所做的 .
这是获取第一列隐藏的代码 .
String SelectedID = dgvInventory.Rows[dgvInventory.CurrentRow.Index].Cells[0].Value.ToString();
3 回答
这可能会有所帮助:http://gsraj.tripod.com/dotnet/ado_net/ado.net_retrieving_database_metadata.html
与此同时:http://msdn.microsoft.com/en-us/library/system.data.datatable.primarykey.aspx
评论后编辑:我错了:
你将不得不谷歌细节tho,得走了......
http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbconnection.getoledbschematable%28v=vs.71%29.aspx
http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbschemaguid.constraint_column_usage%28v=vs.71%29.aspx
我实际上已经明白了 . 就像Awadhendra所说的那样,我必须创建一个隐藏的主要列,这就是我所做的 .
这是获取第一列隐藏的代码 .