Click here to Skip to main content
12,251,686 members (60,158 online)
Rate this:
 
Please Sign up or sign in to vote.
See more: C#
i have following code

 OdbcCommand Command = MainClass.Conn.CreateCommand();
  Command.Connection = MainClass.Conn;
  
  using (OdbcTransaction transaction = MainClass.Conn.BeginTransaction())
            {
                Command.Transaction = transaction;
                try
                {
                    string saveStOpen = "Insert Statement.. "; \\ This This Is SQL Statement
                    Command.CommandText = saveStOpen;
                    Command.ExecuteNonQuery();
 
                    string saveGRNSub = "Insert Statement.."; \\ This This Is SQL 
                    Command.CommandText = saveGRNSub;
                    Command.ExecuteNonQuery();
 
                    OdbcCommand OpenTemp = new  OdbcCommand("SELECT * FROM GRN_TEMP WHERE (UserName = '" + MainClass.GetComputerName() + "')", MainClass.Conn);
                    OdbcDataAdapter da = new OdbcDataAdapter(OpenTemp);
                    DataTable dt = new DataTable();
                    da.Fill(dt); \\ This Point Genarate An Error 
 
                    if (dt.Rows.Count >0)
                    {
                        MessageBox.Show(dt.Rows.Count.ToString());
                    }
                    
                    
                    //}
                    //readTemp.Dispose();
                    
                    transaction.Commit();
 
at da.Fill(dt);
Generate Error (executereader requires the command to have a transaction )

how to avoid this error

I highly appreciate in advance
Posted 12-Nov-12 21:47pm
Edited 12-Nov-12 21:54pm
v3
Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 1

You need to set the transaction after setting the connection object in command

Check this example
http://msdn.microsoft.com/en-us/library/2k2hy99x%28v=vs.71%29.aspx[^]
  Permalink  
Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 2

Open the Connection Before Filling the DataTable
  Permalink  

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


Advertise | Privacy | Mobile
Web02 | 2.8.160426.1 | Last Updated 13 Nov 2012
Copyright © CodeProject, 1999-2016
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100