How to normalize contacts in Access

Hell, there isn't even a command in VBA to pause for a given number of seconds!

Rich (BB code):
Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Sub test()
    Sleep 5000 ' wait for 5 second
    MsgBox ""
End Sub

And FYI GpGeorge is one of the most intelligent persons I've ever seen. So you may want to re-consider what you just said.
 
Last edited:
For one RFP of the government here, I'm looking at distributed sites that will process the data of 45 million people needing government health care. That's not all going to fit on one ACE or SQL database
An Access (ACE) backend is the wrong tool for this job. However, a RDBMS like SQLServer, Postgres, MySQL or Oracle can handle this.

You may need to shard your tables, and use replication for load balancing.

IIRC Facebook runs on MySQL.

But still, it appears you are not designing something on that scale here - how much data are you looking to manage now that won't fit into a single backend?
 
Did you miss the part where I said we had to do both, in at least two different posts? Both means both, as in two. Or do you like to use partial snips of a conversation to try and prove your correctness? George I've understood the difference for over forty years now. However, I do not understand your haranguing attitude. Are you just an old, PNW-crank having fun being a snot on this site? If so, please just go bother someone else. I'm just trying to get help from those who've gone before me in trying to do some advanced things with Access.

I'm not sure what you meant by the last statement. Did you mean in the past or present with Access? I have figured out, with the help of others, that Access, despite all the pretty colors and unimaginable lists of properties, doesn't come close to operating well in the distributed environment we had 40 years ago. Hell, there isn't even a command in VBA to pause for a given number of seconds! And all this with powerful desktops, an almost always present Internet (which some people presume will always be available, like when it goes down in my pueblo I can't even get helps for Access), and almost thirty years to fix basic problems with queries on null joined yes/no fields that every first-year college computer student learns about (http://allenbrowne.com/NoYesNo.html). In the last month that I've started again with Access I've read so many articles that say something like, "I can't use this feature in Access because it doesn't work in real-world situations."

The Access Web - Bugs: Index of Articles (mvps.org)
Over the years, I've come to the realization that a tactic often employed to conceal one's lack of understanding of a basic concept is a relentless outpouring of bafflegab meant to distract and deflect from the point at hand.

That's why, when I see a "wall of gray text" in a post, I'm pretty sure that's what is going on. I regret having to be so blunt. I'd hoped early on that by pointing out what Referential Integrity is, I could encourage a bit of stock-taking and re-thinking. Instead it provoked more bafflegab, and for that, I have to admit falling short.

As Pat pointed out in one of her responses (post #45), there is virtually no limit--at least in theory--to the number of data sources one can consume from Access. What one CANNOT do, though, is bypass the very real constraints of the individual databases involved--Referential Integrity being the relevant one here.

By the way, look up the Sleep API and how you can use it "...in VBA to pause for a given number of seconds". You are technically correct, it's not a native VBA command. But a VBA programmer would know about APIs and how to use them to augment what isn't native. There is a point to mentioning this, beyond merely addressing this complaint.

It is that a good developer learns what the limitations of the various tools are, and instead of going on and on about how awful the tools are, sets about trying to find solutions.

I encourage you to move on and take up the task of learning the tools available to you in Access and start addressing the questions David raised for you.
 
Is that another one of those Undocumented Methods that most do not know about?
I think it's in common use in politics as well. I want to say it originated in the book, 1984, by George Orwell, but that could be wishful thinking.
 
I often refer to the concept as jargon-ese. The poster, in many cases, has acquired the MS Access software, has the latest/fastest hardware (equipped with ample LEDS in various colours) and has not read anything more than the M$ marketing blurbs. "OK Access build me my database. Magically account for requirements not yet identified; make it multi-user and perfect". Jeez M$ screwed up, this Access things doesn't do what I believed it would do (out of the box).
You mean there is an object model that Access adheres to? You mean I have to do some analysis and design? I guess I should have bought FileMakerPro (substitute any other software here)-it can do everything.......
We've all heard this.

Jargon-ese --- the inappropriate combination of semi-technical terms interspersed with malformed database concepts and misspellings.
Also known as bafflegab, gobbledygook, double-talk,rigmarole,song and dance
 
Over the years, I've come to the realization.. blah, blah blah gray wall of your own.
I am learning the Access "tool" (again for like the third time), and it's limitations. The limitations proved too much in the past, I'm trying yet again. Hence my questions here. Everyone starts from some prior experience. I'm sorry you don't like my explaining what I want to do with past experience and what worked well in enterprise computing before. I am working on and finding solutions (an example of the pause, documented here: https://www.accessforums.net/showthread.php?t=86324&p=497996#post497996 before this thread started).

As to the square peg round hole analogy (if it was another thread, please forgive, I have to write responses when I'm not online), Microsoft is famous for being the square peg during it's whole existence. They would buy or steal some idea (I happened to work at Xerox/MCD on the precursor that Steve J. and Bill G. later appropriated), and then change it just enough that it didn't play well with others. It all started with changing the slash to a backslash in DOS.

As to the comments that I must be new here, and don't know anything about Access, attached are two photos from my first purchase of Access. It's the only manual I found worth keeping over the years. That purchase was many years after having worked at MCD on the initial beginnings of the "Internet" and had already developed a robust RAD and commercial application long before the snotties started crying for integral referential integrity (as if that's the end-all like cloud computing is today {and even then, that's a thirty year-old concept too}). As I said, we had to write it ourselves and it wasn't native to the environments in which we worked. It's okay if something like Access wants to take on the task of integrating these features, just do it correctly please. And fix the bugs when it doesn't work (I know, I'm ranting here.)

If George is such a nice guy (he may be), then maybe he can take stock and stop humping on some portion of an explanation I give others when they ask a question of why (and I'm just trying to give an insight and not some some Access linguistically perfect answer), and focus on helping with the original question instead?

P1110497.JPGP1110498.JPG
 
and focus on helping with the original question instead?
Suggestions HAVE been made to which you responded with "back in my day-esque" responses. Rather than try to defend your position, why not try the suggestions of those you solicited?
 
Suggestions HAVE been made to which you responded with "back in my day-esque" responses. Rather than try to defend your position, why not try the suggestions of those you solicited?
What makes you think I haven't tried lots of suggestions the past few weeks? Do you have a spy camera in my office? Of course, I can't try all of the suggestions, as some don't fit my situation. As I said earlier, I tried to post what I know works from past experience, despite the assurance from George that it's impossible. Sorry you don't like that.
 
You're talking to a lot of people who've been around the block and used other environments. Why are we now using Access? Because despite its age (and ours as well), it is a pretty robust tool for certain types of projects. If you want to develop a web app, you're in the wrong forum. If you want to develop a project that is going to require a dozen programmers banging away at the same time, you're in the wrong forum. If you want to develop a project that will run on a phone, you'll be very unhappy with Access.

If you want to tell us in a paragraph or two what you are trying to develop and the environment you need it to run in, we can tell you if you should proceed with Access or find a different tool.
Sorry, my original post was 9 paragraphs, several of those just one liners though. I don't think the question was about any of the things you listed. They weren't my topic.
 
Then I wish you the best of luck in your Access journey
 
Over the years, I've come to the realization that a tactic often employed to conceal one's lack of understanding of a basic concept is a relentless outpouring of bafflegab meant to distract and deflect from the point at hand.

...

As Pat pointed out in one of her responses (post #45), there is virtually no limit--at least in theory--to the number of data sources one can consume from Access. What one CANNOT do, though, is bypass the very real constraints of the individual databases involved--Referential Integrity being the relevant one here (emphasis added).

By the way, look up the Sleep API and how you can use it "...in VBA to pause for a given number of seconds". You are technically correct, it's not a native VBA command. But a VBA programmer would know about APIs and how to use them to augment what isn't native. There is a point to mentioning this, beyond merely addressing this complaint.

It is that a good developer learns what the limitations of the various tools are, and instead of going on and on about how awful the tools are, sets about trying to find solutions.

I encourage you to move on and take up the task of learning the tools available to you in Access and start addressing the questions David raised for you.
As I said, I was just answering a question that another forum member asked. Sorry that bothered you. But since you've been in data processing and around computers for far longer than me, none of what I wrote should be a gray wall to you, as I saw the same ideas implemented by dozens of developers of enterprise solutions (I listed the companies using those solutions, but maybe you never worked for any of them?). But maybe you ran with a different pack in your dp days?

I think that referential integrity had nothing to do with my original post.

Gee, as I've reacquainted myself with Access over the last two months, I wonder what I was doing all that time if not "take up the task of learning the tools available to you in Access." But hey, I may have suffered some brain damage as I banged my head against the wall with a plethora of Access bugs. I posted two or three links to my research on some of those earlier. And my solutions in a few cases on other threads for those who think I've only asked complaining questions.
 
Last edited:
I did notice one thing that I have to agree was right. See post #44 of this thread.

You mentioned using multiple back-ends for Access and then listed the idea that some FTC rules and some banking rules required it. Regulatory isolation is one of the rare situations that would cause you to split back-ends even though they might otherwise have actually fit together. Having worked with the U.S. Navy for a while in the hierarchy NAVY>>(NAVPERS&NAVMED)>>(BUPERS&BUMED), I understand about regulator separation.

Having agreed that was right, I do not wish to imply any kind of aspersions about some of the other things you said. Except this one:

"Only later did the idiots at Microsoft think it was a good idea to mix data with programming in one place." Yes, they did - but they also included a way to split them once you got the basics working again. So, yeah, maybe not theoretically ideal - but very practical for projects just starting to get up off the ground, and not really that difficult to split things apart when needed. Therefore, I can't get worked up about that fact.

What is more important is something else that you alluded to - that M$ never saw a good idea they couldn't steal borrow. When Windows NT came out, its kernel was hugely adapted to match the OpenVMS kernel, which makes sense because Dave Cutler wrote both of them. Part (not all) of my understanding of Windows internals is because after NT, they closely parallel OpenVMS internals.
 
"Only later did the idiots at Microsoft think it was a good idea to mix data with programming in one place." Yes, they did - but they also included a way to split them once you got the basics working again. So, yeah, maybe not theoretically ideal - but very practical for projects just starting to get up off the ground, and not really that difficult to split things apart when needed. Therefore, I can't get worked up about that fact.
I get a lot of security patches from M$ (I like that) for Office that says M$ still hasn't figured out to do what you suggest.
Not to mention the warning that comes up from almost every new database I open from someone else.
 
I get a lot of security patches from M$ (I like that) for Office that says M$ still hasn't figured out to do what you suggest.

What? The "split data from programming part?" The database splitter does the FE/BE split just fine, and where dealing with native Access BE files, the FE can be on a physically different machine. So that's a split. ACE is capable of responding to ODBC connectivity, so your programming can be elsewhere. That's another type of split. It is true that ACE was not designed for huge, hulking installations. But how much of a data/programming split do you want? Telepathy? I'd hate for that to be possible because of all the swear words it would remember.
 

Users who are viewing this thread

Back
Top Bottom