Tech
News
Videos
Forums
Jobs
Books
Events
More
Interviews
Live
Learn
Training
Career
Members
Blogs
Challenges
Certification
Contribute
Article
Blog
Video
Ebook
Interview Question
Collapse
Feed
Dashboard
Wallet
Learn
Achievements
Network
Refer
Rewards
SharpGPT
Premium
Contribute
Article
Blog
Video
Ebook
Interview Question
Register
Login
Read Microsoft Access Database in C#
WhatsApp
Mahesh Chand
4y
359.5k
0
16
100
Article
In this article, you’ll learn how to connect and read Microsoft Access 2003 or earlier versions (.mdb).
Note
: Originally, this article was published on Jan 01, 2000. This is an updated article.
The code snippet in this article is a simple console application that connects with an Access 2000 database, reads data from a table, and displays it on the console. The database has a table named, Developer with two columns, Name and Address.
The .NET framework has two common approaches, ADO.NET and LINQ to read databases. ADO.NET uses the OLE-DB data provider to read a Microsoft Access database. The OLE-DB classes are defined in the System.Data.OleDb namespace. We must import the System.Data.OleDb namespace in our code using the following definition.
using
System.Data.OleDb;
The following code is the complete list of the C# console app that connects with an Access database, opens a connection, reads data, and displays it on the system console.
The following code snippet adds a new row in the table. The INSERT SQL query is used to add a new row.
using
System;
using
System.Data.OleDb;
namespace
AccessDBSample {
class
Program {
static
void
Main(
string
[] args) {
// Connection string and SQL query
string
connectionString = @
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Mahesh\Data\Dev.mdb"
;
string
strSQL =
"SELECT * FROM Developer"
;
// Create a connection
using
(OleDbConnection connection =
new
OleDbConnection(connectionString)) {
// Create a command and set its connection
OleDbCommand command =
new
OleDbCommand(strSQL, connection);
// Open the connection and execute the select command.
try
{
// Open connecton
connection.Open();
// Execute command
using
(OleDbDataReader reader = command.ExecuteReader()) {
Console.WriteLine(
"------------Original data----------------"
);
while
(reader.Read()) {
Console.WriteLine(
"{0} {1}"
, reader[
"Name"
].ToString(), reader[
"Address"
].ToString());
}
}
}
catch
(Exception ex) {
Console.WriteLine(ex.Message);
}
// The connection is automatically closed becasuse of using block.
}
Console.ReadKey();
}
}
}
// Add a new row
strSQL =
"INSERT INTO Developer(Name, Address) VALUES ('New Developer', 'New Address')"
;
command =
new
OleDbCommand(strSQL, connection);
// Execute command
command.ExecuteReader();
The following code snippet updates rows that match with the WHERE condition in the query.
// Update rows
strSQL =
"UPDATE Developer SET Name = 'Updated Name' WHERE Name = 'New Developer'"
;
command =
new
OleDbCommand(strSQL, connection);
command.ExecuteReader();
The following code snippet deletes rows that match with the WHERE condition.
// Delete rows
strSQL =
"DELETE FROM Developer WHERE Name = 'Updated Name'"
;
command =
new
OleDbCommand(strSQL, connection);
command.ExecuteReader();
Note:
Access 2013 or Access 2016 versions work differently. If you want to work with Access 2013, 2016 or Office 365 databases, visit this article:
Connecting C# Application To MS Access Database
Access
ADO.NET
C#
Microsoft Access
Up Next
Ebook Download
View all
Printing in C# Made Easy
Read by 22.4k people
Download Now!
Learn
View all
Mindcracker
Founded in 2003, Mindcracker is the authority in custom software development and innovation. We put best practices into action. We deliver solutions based on consumer and industry analysis.
Membership not found