473,386 Members | 2,129 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

Is it possible to store the location of the backend database in a table?

Seth Schrock
2,965 Expert 2GB
My idea is to have it so that I would have a table that has the file location saved in it. I would then have the database check to see if that value is blank when the database is first opened. If it is blank, then a little form would appear that allows the location to be entered and then the database can open like normal. Is this possible?

The reason I need this is that I plan on (hopefully) needing to install this at multiple companies, not just multiple users of the same company. Therefore, I won't know where the backend will be stored in each case and I want an easy way of telling the front end where that is.
Dec 6 '12 #1

✓ answered by NeoPa

Smiley is quite correct of course. See Relinking Tables using VBA. It's fundamentally about setting the .Connect property then calling .RefreshLink().

I'll include the post here for ease of use, but the whole thread is linked for any that want the fuller picture :
NeoPa:
I have one that works specifically for Access database linked tables. It may be worth including that and making it less specific :
Expand|Select|Wrap|Line Numbers
  1. 'ReLink() Updates links of all tables that currently link to strDBName to point
  2. 'to strDBName in the strLinkDest folder (if specified, otherwise the same folder
  3. 'as the current database).
  4. Public Sub ReLink(ByVal strDBName As String, _
  5.                   Optional ByVal strFolder As String = "")
  6.     Dim intParam As Integer, intErrNo As Integer
  7.     Dim strOldLink As String, strOldName As String
  8.     Dim strNewLink As String, strMsg As String
  9.     Dim varLinkAry As Variant
  10.     Dim db As DAO.Database
  11.     Dim tdf As DAO.TableDef
  12.  
  13.     Set db = CurrentDb()
  14.     If strFolder = "" Then strFolder = CurrentProject.Path
  15.     If Right(strFolder, 1) = "\" Then _
  16.         strFolder = Left(strFolder, Len(strFolder) - 1)
  17.     strNewLink = strFolder & "\" & strDBName
  18.     For Each tdf In db.TableDefs
  19.         With tdf
  20.             If .Attributes And dbAttachedTable Then
  21.                 varLinkAry = Split(.Connect, ";")
  22.                 For intParam = LBound(varLinkAry) To UBound(varLinkAry)
  23.                     If Left(varLinkAry(intParam), 9) = "DATABASE=" Then Exit For
  24.                 Next intParam
  25.                 strOldLink = Mid(varLinkAry(intParam), 10)
  26.                 If strOldLink <> strNewLink Then
  27.                     strOldName = Split(strOldLink, _
  28.                                        "\")(UBound(Split(strOldLink, "\")))
  29.                     If strOldName = strDBName Then
  30.                         varLinkAry(intParam) = "DATABASE=" & strNewLink
  31.                         .Connect = Join(varLinkAry, ";")
  32.                         On Error Resume Next
  33.                         Call .RefreshLink
  34.                         intErrNo = Err.Number
  35.                         On Error GoTo 0
  36.                         Select Case intErrNo
  37.                         Case 3011, 3024, 3044, 3055, 7874
  38.                             varLinkAry(intParam) = "DATABASE=" & strOldLink
  39.                             .Connect = Join(varLinkAry, ";")
  40.                             strMsg = "Database file (%F) not found.%L" & _
  41.                                      "Unable to ReLink [%T]."
  42.                             strMsg = Replace(strMsg, "%F", strNewLink)
  43.                             strMsg = Replace(strMsg, "%L", vbCrLf)
  44.                             strMsg = Replace(strMsg, "%T", .Name)
  45.                             Call MsgBox(Prompt:=strMsg, _
  46.                                         Buttons:=vbExclamation Or vbOKOnly, _
  47.                                         Title:="ReLink")
  48.                             If intErrNo = 3024 _
  49.                             Or intErrNo = 3044 _
  50.                             Or intErrNo = 3055 Then Exit For
  51.                         Case Else
  52.                             strMsg = "[%T] relinked to ""%F"""
  53.                             strMsg = Replace(strMsg, "%T", .Name)
  54.                             strMsg = Replace(strMsg, "%F", strNewLink)
  55.                             Debug.Print strMsg
  56.                         End Select
  57.                     End If
  58.                 End If
  59.             End If
  60.         End With
  61.     Next tdf
  62. End Sub
The reason it's much longer is that it has to handle errors, and recover from them. The meat of it is very similar. Maybe we could look at a version of the ODBC one that handles the various failure scenarios too. That would be a very useful article to link to I expect.
Good thinking Seth. This can certainly help the flexibility of your projects. I use something very similar with some of my clients. Code determines which branch they're running from then it checks to see if that is the currently linked BE. If not, it switches all the relevant tables to the correct one and, Bob's your uncle :-)

25 3366
zmbd
5,501 Expert Mod 4TB
Short answer, yes it is possible to store the path. I would recomend using the UNC path withever possible.
Dec 6 '12 #2
Seth Schrock
2,965 Expert 2GB
Okay. So I know how to get the value put into the database. How do I then tell Access that the location of the linked tables is X?
Dec 6 '12 #3
zmbd
5,501 Expert Mod 4TB
Ah, that would be via the link manager.
I have a pretty simple one... let me find it.

You can also get super fancy that looks at application launch location, revisions, and so forth.
Dec 6 '12 #4
TheSmileyCoder
2,322 Expert Mod 2GB
I designed a hazard log system once. Depending on the project they would then choose which backend to link to during startup (A form handles this) Try looking through our insights section. I am quite sure we have a article relating to relinking backend tables.
Dec 6 '12 #5
zmbd
5,501 Expert Mod 4TB
Not to leave you hanging... sorry, had an urgent event in the lab... stupid Gremlins!
-
Anyway, I have a form_splash that opens with the database. It has the code to check for updates and backends... a lot of code.

The basics; here's the main loop behind one of the simpler relinking codes I use (one of my oldest too):

:Just a little setup:
- So, first I open a record set on tbl_databaseconfig in the front end. The reason I open the record set is because I store/retrieve other information such as current open count, current version, and the like.
- I then pull the path location from the table just like any other record and put it in a string variable. The "zjpath" is where that string is stored for use in the re-link.
- I then use the DIR() function to check for the file. If it's not there then I raise an error and let the error trap send me the information.
- If the file is found then I start the relinking. Now some will try to open a recordset on one of the linked tables and move within it, trapping any errors and then running the re-linker code of needed. However, this database has like 5 tables in the backend and only a three in the front end so I just refresh the links as it takes like 20 seconds to do and I often have messages in the splash screen about things so this gives a little delay for the user to read :)
- Now... I could store the information about which tables are linked and pull that as a record set; however, the database has that information in the table definitions so I loop thru that and look to see if the table is attached and if so I reattach/refresh the link

Expand|Select|Wrap|Line Numbers
  1.  '(.... preamble code omitted)
  2. 'Log any files that didn't connect
  3. On Error GoTo ZJ_ConnectError
  4. '
  5.     For Each ztdf In zdb.TableDefs
  6.             ''Set some user feed back to the splash form
  7.         zjsize = zjsize + 1
  8.         zj_msgtxt = "Loading...(" & Format((zjsize / zdb.TableDefs.Count) * 100, "Standard") & "%) "
  9.         'zj_msgtxt = zj_msgtxt & ".."
  10.         Form_frm_Startup.Label6.Caption = zj_msgtxt
  11.         'Form_frm_Startup.Label6.Caption = "Loading..." & zj_msgtxt
  12.         Form_frm_Startup.Repaint
  13.             '
  14.             'Get the table information and if attached set and refreash the link
  15.         If ztdf.Attributes = dbAttachedTable Then
  16.         ztdf.Connect = ";DATABASE=" & zjpath & ";TABLE=" & ztdf.SourceTableName
  17.         ztdf.RefreshLink
  18.                 '
  19.                 'on an error the email message is being created
  20.                 'to send me so we can kill the error
  21.                 'and move on to the next table.
  22.                 'once the resume next is executed.
  23.         If Err.Number > 0 Then Err.Clear
  24.         End If
  25.     Next
  26. '(..... more code omitted)
On Error GoTo ZJ_ConnectError is the code that sends me an email that someone couldn't connect to the backend or to one of the tables it also posts the issue to the splash form.

(Edit) as TheSmileyCoder suggested: Relinking ODBC Tables using VBA
Dec 6 '12 #6
NeoPa
32,556 Expert Mod 16PB
Smiley is quite correct of course. See Relinking Tables using VBA. It's fundamentally about setting the .Connect property then calling .RefreshLink().

I'll include the post here for ease of use, but the whole thread is linked for any that want the fuller picture :
NeoPa:
I have one that works specifically for Access database linked tables. It may be worth including that and making it less specific :
Expand|Select|Wrap|Line Numbers
  1. 'ReLink() Updates links of all tables that currently link to strDBName to point
  2. 'to strDBName in the strLinkDest folder (if specified, otherwise the same folder
  3. 'as the current database).
  4. Public Sub ReLink(ByVal strDBName As String, _
  5.                   Optional ByVal strFolder As String = "")
  6.     Dim intParam As Integer, intErrNo As Integer
  7.     Dim strOldLink As String, strOldName As String
  8.     Dim strNewLink As String, strMsg As String
  9.     Dim varLinkAry As Variant
  10.     Dim db As DAO.Database
  11.     Dim tdf As DAO.TableDef
  12.  
  13.     Set db = CurrentDb()
  14.     If strFolder = "" Then strFolder = CurrentProject.Path
  15.     If Right(strFolder, 1) = "\" Then _
  16.         strFolder = Left(strFolder, Len(strFolder) - 1)
  17.     strNewLink = strFolder & "\" & strDBName
  18.     For Each tdf In db.TableDefs
  19.         With tdf
  20.             If .Attributes And dbAttachedTable Then
  21.                 varLinkAry = Split(.Connect, ";")
  22.                 For intParam = LBound(varLinkAry) To UBound(varLinkAry)
  23.                     If Left(varLinkAry(intParam), 9) = "DATABASE=" Then Exit For
  24.                 Next intParam
  25.                 strOldLink = Mid(varLinkAry(intParam), 10)
  26.                 If strOldLink <> strNewLink Then
  27.                     strOldName = Split(strOldLink, _
  28.                                        "\")(UBound(Split(strOldLink, "\")))
  29.                     If strOldName = strDBName Then
  30.                         varLinkAry(intParam) = "DATABASE=" & strNewLink
  31.                         .Connect = Join(varLinkAry, ";")
  32.                         On Error Resume Next
  33.                         Call .RefreshLink
  34.                         intErrNo = Err.Number
  35.                         On Error GoTo 0
  36.                         Select Case intErrNo
  37.                         Case 3011, 3024, 3044, 3055, 7874
  38.                             varLinkAry(intParam) = "DATABASE=" & strOldLink
  39.                             .Connect = Join(varLinkAry, ";")
  40.                             strMsg = "Database file (%F) not found.%L" & _
  41.                                      "Unable to ReLink [%T]."
  42.                             strMsg = Replace(strMsg, "%F", strNewLink)
  43.                             strMsg = Replace(strMsg, "%L", vbCrLf)
  44.                             strMsg = Replace(strMsg, "%T", .Name)
  45.                             Call MsgBox(Prompt:=strMsg, _
  46.                                         Buttons:=vbExclamation Or vbOKOnly, _
  47.                                         Title:="ReLink")
  48.                             If intErrNo = 3024 _
  49.                             Or intErrNo = 3044 _
  50.                             Or intErrNo = 3055 Then Exit For
  51.                         Case Else
  52.                             strMsg = "[%T] relinked to ""%F"""
  53.                             strMsg = Replace(strMsg, "%T", .Name)
  54.                             strMsg = Replace(strMsg, "%F", strNewLink)
  55.                             Debug.Print strMsg
  56.                         End Select
  57.                     End If
  58.                 End If
  59.             End If
  60.         End With
  61.     Next tdf
  62. End Sub
The reason it's much longer is that it has to handle errors, and recover from them. The meat of it is very similar. Maybe we could look at a version of the ODBC one that handles the various failure scenarios too. That would be a very useful article to link to I expect.
Good thinking Seth. This can certainly help the flexibility of your projects. I use something very similar with some of my clients. Code determines which branch they're running from then it checks to see if that is the currently linked BE. If not, it switches all the relevant tables to the correct one and, Bob's your uncle :-)
Dec 6 '12 #7
Seth Schrock
2,965 Expert 2GB
I'm starting to work on it and I noticed that there is a significant difference in the amount of code between what Z has posted and what was posted in the link provided. Post #1 is smaller, Post #2 is huge, and I don't think that Post #4 actually resets the BE location. My question is, what is the difference between these options? Most of this code I have no clue about so I can't figure what the differences mean to me and my situation. What I plan on doing is to split my database once I have finished making my test database, so the BE will be an Access file (not sure if this matters).
Dec 7 '12 #8
zmbd
5,501 Expert Mod 4TB
Seth,
Now the code I posted was/is from a much larger set of instructions as noted on line1.

-As for the code in the link insight:
Post1: is a "refresh" only in that as you noted it doesn't reset the path as in my post nor as in the others.

Post2: is a set and refresh with a lot of error checking.

The other code talks about enhancements to speed/optimization and really doesn't apply unless you start having issues.
Dec 7 '12 #9
Seth Schrock
2,965 Expert 2GB
Okay. I'll start with the one that has error checking. That will help me catch my mistakes :)
Dec 7 '12 #10
Seth Schrock
2,965 Expert 2GB
Got a problem. I have copied and pasted the code from the link into a module on a test database. Here is the code:
Expand|Select|Wrap|Line Numbers
  1. Option Compare Database
  2. Option Explicit
  3.  
  4. Public Sub ReLink(ByVal strDBName As String, _
  5.                   Optional ByVal strFolder As String = "")
  6.     Dim intParam As Integer, intErrNo As Integer
  7.     Dim strOldLink As String, strOldName As String
  8.     Dim strNewLink As String, strMsg As String
  9.     Dim varLinkAry As Variant
  10.     Dim db As DAO.Database
  11.     Dim tdf As DAO.TableDef
  12.  
  13.     Set db = CurrentDb
  14.     If strFolder = "" Then strFolder = CurrentProject.Path
  15.     If Right(strFolder, 1) = "\" Then _
  16.         strFolder = Left(strFolder, Len(strFolder) - 1)
  17.     strNewLink = strFolder & "\" & strDBName
  18.     For Each tdf In db.TableDefs
  19.         With tdf
  20.             If .Attributes And dbAttachedTable Then
  21.                 varLinkAry = Split(.Connect, ";")
  22.                 For intParam = LBound(varLinkAry) To UBound(varLinkAry)
  23.                     If Left(varLinkAry(intParam), 9) = "DATABASE=" Then Exit For
  24.                 Next intParam
  25.                 strOldLink = Mid(varLinkAry(intParam), 10)
  26.                 If strOldLink <> strNewLink Then
  27.                     strOldName = Split(strOldLink, _
  28.                                        "\")(UBound(Split(strOldLink, "\")))
  29.                     If strOldName = strDBName Then
  30.                         varLinkAry(intParam) = "DATABASE=" & strNewLink
  31.                         .Connect = Join(varLinkAry, ";")
  32.                         On Error Resume Next
  33.                         Call .RefreshLink
  34.                         intErrNo = Err.Number
  35.                         On Error GoTo 0
  36.                         Select Case intErrNo
  37.                         Case 3011, 3024, 3044, 3055, 7874
  38.                             varLinkAry(intParam) = "DATABASE=" & strOldLink
  39.                             .Connect = Join(varLinkAry, ";")
  40.                             strMsg = "Database file (%F) not found.%L" & _
  41.                                      "Unable to ReLink [%T]."
  42.                             strMsg = Replace(strMsg, "%F", strNewLink)
  43.                             strMsg = Replace(strMsg, "%L", vbCrLf)
  44.                             strMsg = Replace(strMsg, "%T", .Name)
  45.                             Call MsgBox(Prompt:=strMsg, _
  46.                                         Buttons:=vbExclamation Or vbOKOnly, _
  47.                                         Title:="ReLink")
  48.                             If intErrNo = 3024 _
  49.                             Or intErrNo = 3044 _
  50.                             Or intErrNo = 3055 Then Exit For
  51.                         Case Else
  52.                             strMsg = "[%T] relinked to ""%F"""
  53.                             strMsg = Replace(strMsg, "%T", .Name)
  54.                             strMsg = Replace(strMsg, "%F", strNewLink)
  55.                             Debug.Print strMsg
  56.                         End Select
  57.                     End If
  58.                 End If
  59.             End If
  60.         End With
  61.     Next tdf
  62. End Sub
  63.  
  64.  
Line 20 is evidently coming back wrong because it then jumps to it End If statement. I just ran it again and got the following values for the criteria:

.Attributes = 2
dbAttachedTable = 1073741824

As I said before, this stuff is totally new and I have no clue where to start looking. Hopefully this information will help you help me. Is Line 20 missing what .Attributes and dbAttachedTable are supposed to equal? What are the values supposed to be?

PS: After stepping through the code, I found that after several loops through the code (not sure how many), it did end up going through the True portion of the If Then statement. However, the tables didn't relink to the BE in the new location.
Dec 7 '12 #11
NeoPa
32,556 Expert Mod 16PB
Line #20 is within a For loop Seth (See line #18). This code is indented as proscribed and not randomly. That means that any indented lines are within a maningful block. Line #20 is within a With block from line #19, a For block from line #18 and a Sub block from line #4. Hence it's indented 12 spaces.

The reason I mention that is because every time it proceeds through that block of code the value of .Attributes will refer to those of a different table from your TableDefs collection. Thus, it is important to understand which table is being processed at the time.

The .Attributes value of 2 is not recognised. By this I mean none of the constants in the Help page has a value of 2, so I don't know what it means. I suspect when you see the table it's referring to though, it will be clear why it was skipped in that loop.
Dec 7 '12 #12
Seth Schrock
2,965 Expert 2GB
As you guessed, once I figured out the table names (using ?tdf.Name in the immediate window) I found out why it wasn't doing anything with them: they were MSys... tables. Duh...

And I also figured out why my tables weren't relinking. Since I wasn't passing a file path to strFolder, it was setting itself to the CurrentProject.Path location and that wasn't where I had put the BE. So I tried passing a file path to it like this
Expand|Select|Wrap|Line Numbers
  1. Private Sub Form_Load()
  2. Dim strDBName As String
  3. Dim strNewFolder As String
  4.  
  5.  
  6. strDBName = "IntakeMktgDB_ver2_be.accdb"
  7. strNewFolder = "C:\Users\Seth Schrock\Documents\Database Test Files\IntakeMktgDB_ver2\NewFolder\"
  8. ReLink (strDBName, strNewFolder)
  9. MsgBox ("Relinking Complete")
  10.  
  11. End Sub
but I get the following error:
Compile error:

Expected: =

with line 8 selected. I guess I'm not totally sure how to pass a file path to the ReLink function.

I did end up moving the FE and BE databases into the same folder and ran the code (without passing a value to strFolder) and it worked perfectly. So my only problem now is passing a value to strFolder.
Dec 7 '12 #13
NeoPa
32,556 Expert Mod 16PB
Bad timing here Seth. I'm just off out. I'll be back Sunday and pick up from there. It's all straightforward. No worries, I just ran out of time for now :-(
Dec 7 '12 #14
zmbd
5,501 Expert Mod 4TB
Line 8 place the key word CALL before the subroutine name sometimes that helps when using a different sub.
Dec 7 '12 #15
Seth Schrock
2,965 Expert 2GB
It works okay if I just have
Expand|Select|Wrap|Line Numbers
  1. ReLink (strDBName)
I could leave it like that, but I would be limited to having the BE in the same folder as the FE so I would really like to figure out how to pass the folder path to the ReLink function. I have had this issue before when trying to pass multiple variable to a function. It is just something that I have never figured out.

Just curious, why the = "" at the end of line 5 in post #11? Is that just to make the value not null but blank if nothing is passed to it>
Dec 7 '12 #16
NeoPa
32,556 Expert Mod 16PB
Just popping in Seth. We'll need to see the exact values of the two parameters at the time passed and the full error message. Using Call makes sense here as Z says.
Seth:
Just curious, why the = "" at the end of line 5 in post #11? Is that just to make the value not null but blank if nothing is passed to it?
Yes. That syntax specifies a default value.
Dec 7 '12 #17
zmbd
5,501 Expert Mod 4TB
Neopa: perhaps Lines 6 and 7?
I hate the spaces in the file path name.

Seth,
As a side line to the thread; however it relates to lines 6 and 7 of the code:
IMHO: it is best practice to only use alphanumerics and the underscore in any file, directory, variable, or other name. No spaces, no dashes, etc... This comes from an oldschool perspective and the fact that parsers will occatinally choke on a space or special character.
Dec 7 '12 #18
NeoPa
32,556 Expert Mod 16PB
Indeed Z. Line #6 is clearly not fully specified and may cause issues unless you know where the current default folder is.
Dec 7 '12 #19
Seth Schrock
2,965 Expert 2GB
I can't change the \Seth Schrock\ portion of the file path as that is my user name. I can do something about the other spaces though. I guess I could also move the database out of my documents and that would remove the user name from the file path.

NeoPa, lines 6 & 7 are what I'm passing to the function. I hard coded them just to take that variable out of the equation (no pun intended). I have another plan to pass the value of a textbox to the variables to pass them onto the function. Also, the error message that I get is in post #13. The compile error: Expected =.
Dec 7 '12 #20
Seth Schrock
2,965 Expert 2GB
@NeoPa, do I need the full file path of the stored in the strDBName? I thought it was just looking for the name. It did work however in the two locations that I tried when I left strNewFolder out when I called the ReLink function.
Dec 7 '12 #21
NeoPa
32,556 Expert Mod 16PB
Z:
IMHO: it is best practice to only use alphanumerics and the underscore in any file, directory, variable, or other name. No spaces, no dashes, etc... This comes from an oldschool perspective and the fact that parsers will occatinally choke on a space or special character.
Indeed so, but nowadays that's proving less and less practical. Generally, when creating new folders for use, I would recommend avoiding the use of spaces, but we all need to ensure that code handles spaces consistently in folder and file names now that so many system folders have them embedded within. It's essentially a fact of life now :-(

Seth:
Also, the error message that I get is in post #13. The compile error: Expected =.
You should have followed Z's advice in post #15 Seth. It should read either of (but I prefer and recommend #1) :
  1. Call ReLink(strDBName, strNewFolder)
  2. ReLink strDBName, strNewFolder

Seth:
do I need the full file path of the stored in the strDBName?
No. I was in a bit of a rush at the time and forgot how it was supposed to work (blush).

strDBName is the string that matches the current BE filename, as well as the new BE filename. The only part that changes is the folder. Frankly, line #7 looks fine as long as you have such a folder available on your system. What you are reporting seems to be saying that you don't. If you still believe you do then run the following code for me and then post the result back in here :
Expand|Select|Wrap|Line Numbers
  1. ChDir "C:\Users\Seth Schrock\Documents\Database Test Files\IntakeMktgDB_ver2\NewFolder"
  2. ?CurDir "C:"
As a matter of interest too, it would be good to see the .Connect string of (any) one of your tables linked to "IntakeMktgDB_ver2_be.accdb".
Expand|Select|Wrap|Line Numbers
  1. strT="???"
  2. ?CurrentDb().TableDefs(strT).Connect
Where "???" reflects the name of the table chosen.
Dec 8 '12 #22
Seth Schrock
2,965 Expert 2GB
Got it to work. I used your preferred method. When I did the ChDir() with the New Folder at the end it didn't, it said that the file path was invalid. I took the New Folder off the end and it worked. I then renamed New Folder to BE_File. I was then able to do the ChDir() with the BE_File on the end and it worked. So here is that I have and it does work perfectly.
Expand|Select|Wrap|Line Numbers
  1. Private Sub Form_Load()
  2. Dim strDBName As String
  3. Dim strNewFolder As String
  4.  
  5. strDBName = "IntakeMktgDB_ver2_be.accdb"
  6. strNewFolder = "C:\Users\Seth Schrock\Documents\Database Test Files\IntakeMktgDB_ver2\BE_File\"
  7. Call ReLink(strDBName, strNewFolder)
  8.  
  9. MsgBox ("Relinking Complete")
  10.  
  11. End Sub
The ReLink code is the same as posted before. Thanks to everyone for your help.
Dec 9 '12 #23
NeoPa
32,556 Expert Mod 16PB
Seth:
When I did the ChDir() with the New Folder at the end it didn't, it said that the file path was invalid.
That, indeed, was my suspicion. Clearly you found the problem that I expected to be found. With that understood, getting the already working code to work for you was straightforward (as I would expect).

In such a situation I expect the last request, for the current BE .Connect string, is no longer required.

PS. I will need to change the Best Answer chosen. I appreciate the sentiment, but post #22 doesn't reflect anything too helpful to anyone else coming along looking for answers. I'll look for the post that most appropriately reflects that and set it for you :-)
Dec 9 '12 #24
Seth Schrock
2,965 Expert 2GB
It was a tough decision since the main code came from a different thread. I guess I didn't think about the post referencing the other thread. Thanks NeoPa.
Dec 9 '12 #25
NeoPa
32,556 Expert Mod 16PB
Indeed. No criticism goes your way for that Seth. Not at all. I'm probably just in a better position to see how best to make it work as I have Mod powers to edit existing (older) posts, as well as a bit more experience to recognise what people most need.
Dec 9 '12 #26

Sign in to post your reply or Sign up for a free account.

Similar topics

11
by: HB2 | last post by:
I am using the Linked Table Manager in Access to try and connect my front end database (on my desktop) to my backend database (on my web host) I get an invalid name error. Any help much...
4
by: Wayne | last post by:
I have a backend database (Backend1.mdb)that has 3 main data tables, I'll call them Data1, Data2 and Data3, plus several other associated tables. All relationships are set in the backend database...
2
by: HC | last post by:
Hello, Folks. I am not sure if this can be done (and a brief search of this group didn't yield any results that I thought would do the trick) but if it can be done it would make my life easier so...
1
by: amy | last post by:
*** Sent via Developersdex http://www.developersdex.com ***
10
dmjpro
by: dmjpro | last post by:
Can one explain me in details how to store a text file in a table.For example I have a text file named as aa.txt.I want to store it in a table.Or i can also create a table in order to store it.How...
1
srj115
by: srj115 | last post by:
This is just something that had me tearing out my nose hairs in frustration... hypothetically. I must have spent 7 or 8 hours trying to get this to work before I smelled the coffee (so to speak). ...
1
Mohan Krishna
by: Mohan Krishna | last post by:
Hi everyone, I am doing a project in VB with Access or SQL as backend. Please help me whether we can Add or Delete a Column in backend database in VB project dynamically (i.e. while running the...
2
by: diarehman | last post by:
hi all plz help me. i have to store images in database(access at backend) through vb.net. if u have any information plz reply as soon as possible. thanks
4
by: mostafijur | last post by:
Hello I want to transfer database table from one pc to another pc. 1. How it possible? Pls can u tell me step by step? 2. Where the table and database store in my PC? OS:...
1
by: shanmukha | last post by:
sir,we are doing STIGNOGRAPHY project.my problem is how to store picture in database table?i know only text,and number.
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.