• 0

[C#] ADODB Connection State


Question

Hey guys..

I'm a C# newbie, I was able to get my program to connect to an Access DB using ADO, but now I wanna wask about the Connection.State property, and I don't know how....I mean is it Connection.State=1 or Connection.State=adStateOpen ?? so I was wondering if anyone can give me some pointers....also if you have some info on Error Handling I would appreciate it :laugh:

Thanks ;)

Link to comment
https://www.neowin.net/forum/topic/249301-c-adodb-connection-state/
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Hiya ArBoK,

There are no "magic numbers" in .NET (appart from one function that uses a magic number). Absolutely everything is object oriented and usually eccepts and returns objects.

The first step in handling exceptions is to use the Try/Catch block:

try
{
 ? ?// some code here to attempt to execute
}
catch (Exception Ex)
{
 ? System.Windows.Forms.MessageBox(Ex.Message);
}

Hope this hel:D :D

- Tranq

  • 0

I don't really program in C# but here is some vb.net code which does the trick

it should not be that hard to convert it to C#, just a few semicolons here and there!

' You need the following data library
Imports System.Data.OleDb

' Declare variables
        Dim strConnectionParameters As String

        ' Connection string
        strConnectionParameters = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strDatabasePath & ";Jet OLEDB:System database=" & strDatabaseWorkgroup

        ' Create a new connection to the database & open it
        Try
            myConnection = New OleDbConnection(strConnectionParameters)
            myConnection.Open()
        Catch ex As Exception
            MessageBox.Show("Aection to the database could not be established. The returned error was: " & ex.Message, "Database Connection Failed", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
        End Try


' AND TO GET STATE

        ' 0 (closed), 1 (open), 2 (connecting), 4 (executing), 8 (fetching), 16 (broken)
        Dim result As Short = myConnection.State
        MsgBox(result)

  • 0

Don't assume that a given connection state will always equate to a given number (e.g. 0 = closed), as the numbers could be changed in the future by MS. Plus, using numbers can be difficult to read if the person reading doesn't know that 0 is closed, 1 is open and so on.

There is an enumeration named "ConnectionState" in the System.Data namespace. Use that instead:

ConnectionState.Closed

ConnectionState.Open

And so on. Intellisense would tell you this information as well.

  • 0
  DrZoidberg said:
Don't assume that a given connection state will always equate to a given number (e.g. 0 = closed), as the numbers could be changed in the future by MS.  Plus, using numbers can be difficult to read if the person reading doesn't know that 0 is closed, 1 is open and so on.

There is an enumeration named "ConnectionState" in the System.Data namespace.  Use that instead:

ConnectionState.Closed

ConnectionState.Open

And so on. Intellisense would tell you this information as well.

584992896[/snapback]

That's an enum, which has an integer backing it ;). You should always use Enum's, because they're a lot easier to read, and you dont have to remember integer values.

  • 0
  Sn1p3t said:
That's an enum, which has an integer backing it ;). You should always use Enums, because they're a lot easier to read, and you dont have to remember integer values.

584993667[/snapback]

Err, yes. I already said that in my post:

  DrZoidberg said:
Plus, using numbers can be difficult to read if the person reading doesn't know that 0 is closed, 1 is open and so on.
  • 0
  DrZoidberg said:
Err, yes.  I already said that in my post:
  DrZoidberg said:
Plus, using numbers can be difficult to read if the person reading doesn't know that 0 is closed, 1 is open and so on.

584996531[/snapback]

Oh, I know. I was simply explaining that to anyone who didn't know what it was :p

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Of course the sales are bad. Who even asked for a thinner phone with way less battery? Lightness? It's still a giant brick, it's just a thinner giant brick. It makes no sense at all. Making folding phones thinner, now that does make sense. Because when folded, the thinner it is unfolded, the more usable and pocketable it is when folded. You already expect worse battery at expense of actually being more pocketable. Galaxy Flip, when folded is half the size of S Ultra models and about as thick. That does make a big difference when fitting it in a pocket. But the phone that's as big as Ultra, making it thinner, you don't really solve anything, it's still a giant slab that barely fits into a pocket. All the "Mini" phones made way more sense than this thin crap. Especially now that it's literally impossible to find a phone smaller than 6.5". My dad only needs phone for calls and SMS and he doesn't want to go with smartphone because they are all so massive. Especially cheaper ones. Like, he'd be fine with Galaxy A06 for all he cares in terms of hardware, but it only comes in giant 6.7" format. It's useless. Or is he suppose to find a 800€ old gen iPhone Mini or Zenfone? He doesn't even need those stupid specs and such stupid price. And then you see old people fumbling around with giant smartphones and they don't even need 3/4 of features on them.
    • its funny now instead of robots built for a specific task which is more efficient we are focused on humanoid robots that are built for do anything but might not do it as well because of restrictions similar to how human body works and they were molded after...
    • 3,900 mAh. When compared to the S25 Ultra (5,000), the S25+ (4,900) and the S25 (4,000), it has the worst battery of them all, all because of that slim size. Everything comes with sacrifices.
  • Recent Achievements

    • First Post
      emptyother earned a badge
      First Post
    • Week One Done
      Crunchy6 earned a badge
      Week One Done
    • One Month Later
      KynanSEIT earned a badge
      One Month Later
    • One Month Later
      gowtham07 earned a badge
      One Month Later
    • Collaborator
      lethalman went up a rank
      Collaborator
  • Popular Contributors

    1. 1
      +primortal
      669
    2. 2
      ATLien_0
      271
    3. 3
      Michael Scrip
      218
    4. 4
      +FloatingFatMan
      164
    5. 5
      Steven P.
      163
  • Tell a friend

    Love Neowin? Tell a friend!