DaniWeb IT Discussion Community

DaniWeb IT Discussion Community (http://www.daniweb.com/forums/index.php)
-   C# (http://www.daniweb.com/forums/forum61.html)
-   -   how do i update to Access db? (http://www.daniweb.com/forums/thread31518.html)

c#dummie Aug 31st, 2005 2:26 am
how do i update to Access db?
 
hi

im using VS .net, MS Access and c# language.

basically i tried to do an update command using oleDbDataAdapter and commandbuilder. i also searched for tutorials but i still cant get things going.

could someone please tell me how come i couldnt generate update and delete commands using oleDbDataAdapter? i managed to do select command and my parameterized query is working well.

i just want to do an update now. what other ways are there for me to do this and also ensure that the changes return correctly to the place that i queried from?

if possible, i hope i can do this in IDE instead of programmatically.

as im a novice, please pardon me and help me with some step by step instructions whenever possible. thank you.
are there any simple walkthrough tutorials that i can follow to accomplish my entire update task? i appreciate it if you could provide me with sample codes or just anything helpful. time's running out... hope to get update going asap..

thanks a lot to all of you! =)

Toulinwoek Aug 31st, 2005 7:47 am
Re: how do i update to Access db?
 
Which version of C# are you using? The process you describe has been made almost TOO simple in C# 2005 Express.

c#dummie Aug 31st, 2005 12:46 pm
Re: how do i update to Access db?
 
hi

im not using c# 2005 Express. im using VS .NET 2003

thank you!

Toulinwoek Aug 31st, 2005 7:49 pm
Re: how do i update to Access db?
 
I'm not familiar with that version. I'm really new to programming, so the Express edition is all I know anything about, as far as C#.

ROGENATOR Sep 27th, 2005 6:25 pm
Re: how do i update to Access db?
 
Greetings:
Actually i spent a lot of time trying to do this with the default updateCommand, but, with no satisfactory results, my suggestion is to use sql commands with an OleDbCommand, what you need is to check if there was an update and if so enter a sql instruction:
Quote:

if(myDataSet.HasChanges()){
DataTable update=new DataTable("name of your table");
update=contenedor.Tables[0];
int len=0;
//Check the length of the table rows
foreach(DataRow myRow in update.Rows)
{
len++;
}
conexion.Open();
for(int i=lenI;i<len;i++)
{
Object linea=update.Rows[i].ItemArray;
comandos1=new OleDbCommand("INSERT INTO tabla1"+" VALUES ("+linea[0]+","+linea[1]+","+linea[2]+")",conexion);
comandos1.ExecuteNonQuery();

}
conexion.Close();
}
This is the easy way, overwrite all of them with the new stored values, the beauty of this is that you also insert new records, the problem is that you first need to check that the values are valid and you are not changing protected values, if you want to do it correctly just check wich of the fields was changed by comparing your object (in this case linea) to the db and just change where they don`t match.
Hope this helps and sorry for my bad English, it`s not my native language :o

c#dummie Sep 28th, 2005 12:21 am
Re: how do i update to Access db?
 
oh i see... i can do multiple row updates now...
to take this to a higher level, how do i update multiple rows for ALL of the tables in my Access database?

right now, i only can update multiple rows for a table... so i have no choice but to update tables one by one...

i use dataadapter to generate update commands. using dataadapter i can only select one table to write my SQL codes. how can i update all my tables at one go then??

ROGENATOR Sep 28th, 2005 5:09 am
Re: how do i update to Access db?
 
Greetings:
You could use a loop for the number of the table on your DataTable to update all, there`s a way of updating all in one pass but i think this method gives you more control on the values that you pass to the database, other thing that i just realize is that in this part
Quote:

DataTable update=new DataTable("name of your table");
update=contenedor.Tables[0];
you could specify all of the tables and refer to them as you need them, but im not sure exactly how, as soon as i get home i`ll give it a go


All times are GMT -4. The time now is 2:08 pm.

Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2009 DaniWeb® LLC