splitting database

princess_kay

Registered User.
Local time
Today, 15:56
Joined
Oct 16, 2010
Messages
27
hi all, i have done the following:
Split my Database into FE and BE
BE = Table
FE = Form

i have 1 table and 1 form, is it possible to update my table through my program i have developed in visual studio and it will also update the form aswell?

i am confused, when i open the file that contains my form which is FE there is a table linked to it and i can edit the table, which then changes the form. however when i change the table in the front end it doesnt reflect in the form why is that?

am i supposed to use my program to update the table in FE or BE?

i would like the table which is linked to my program in vs to be updated when someone enrolls and also update the form aswell. however i dont want the table and form to be edited manually like by an unauthorised person who may gain access to the database.

is this possible. i have also set a database password for both ends. but lets say someone guesses the password i dont want them to be able to edit the table or form.

is this possible? please help
 
hi all, i have done the following:
Split my Database into FE and BE
BE = Table
FE = Form

i have 1 table and 1 form, is it possible to update my table through my program i have developed in visual studio and it will also update the form aswell?

......
Tables are where your data is stored and you interact with that data through your forms.
...

i am confused, when i open the file that contains my form which is FE there is a table linked to it and i can edit the table, which then changes the form. however when i change the table in the front end it doesnt reflect in the form why is that?

...
The tables you see are representations of the tables in your back end that are linked to the front end. You might notice that they have a small blue arrow to their left to indicate this.

Any changes made to data in these tables must be made via your forms. Your User should never interact directly with the tables or the data within them.
...

am i supposed to use my program to update the table in FE or BE?

...
As previously mentioned all interactions with the data in the tables should take place via the Forms in your FE. The user should not have access to the BE.
...

i would like the table which is linked to my program in vs to be updated when someone enrolls and also update the form aswell.
...

...
If the DB has been split correctly and all the links between the FE and BE are correct, this should happen.
...

however i dont want the table and form to be edited manually like by an unauthorised person who may gain access to the database.

......
Not quite sure what you mean here :confused: are you talking about the data or the form and table design? You should be able to protect both with the correct implementation of user rights.
....

i have also set a database password for both ends. but lets say someone guesses the password i dont want them to be able to edit the table or form.

is this possible? please help
Ultimately if someone wants to break into your DB badly enough they will in most cases find a way.

Additionally one table and one form does not strike me as a properly normalised DB, you may gain by reading up on the subject.
 
Last edited:
Additionally one table and one form does not strike me as a properly normalised DB, you may gain by reading up on the subject.

i only need one table, i dont even think i need a form. the table has two columns username and password. i have decided to just stick with the database encrypted password to secure my DB. i have given my database the "accdb" format, this is called in my program like so:

Code:
 [SIZE=3]Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:/Users/Documents/Database.accdb[/SIZE]

however when i try to login or enroll a message says invalid password. is this because i have secured the database using a encrypted password or because its accdb? in any case how can i avoid this message. it never gave this messgae before i secured it, so i am guessing it is the password. is it possible i can keep the password and also use my program on the database?

 
Sound's very much to me as if you are approaching this from an Excel perspective.

Excel is a spreadsheet, whilst Access is a relational database. They are very different beasts, each with their own pros and cons. With experience you will begin to see however that Access is a far more powerful tool.

A properly constructed database will by it's very nature have more that one table if it is in fact properly normalised I would urge you to become familiar and comfortable with this concept before you progress too much further.

In short you need to forget everything you know about spreadsheets (Excel) as the construction of a usable DB requires a whole new (and possibly scary) way of thinking about how you store and deal with your data.
 
i only need one table, i dont even think i need a form. the table has two columns username and password....
...

The user, even if that user is only you, should always interact with the data in your tables via a form, in this way it is possible to control the nature of the data that is entered into each field of your table.

In short Tables are not for Human consumption.
 
ok i have successfully split the database i see the arrow, i have set a password for BE. i have set the form so users cant change the data. however, there is no settings for the table so users can alter the data, i am still able to edit data in the table front n back. will this happen if it is opened on someone elses computer? because that is not what i want. i can change data entered in the table manually. is there a way i can test what will happen on sum1 elses comp?
 
What you need is a table of users, and their various levels of permissions. Then in your form's On Load event, you could test which user is logged in and set the various form Data Properties appropriately. Have a look at the Allow Edits, Allow Deletions, Allow Additions amongst others.

I am also once again going to strongly urge you to look very carefully at your table structure.
 
1: is it normal for the FE database not to show the form and table data when i click on them? because when i do it doesnt open it says not a valid password. this is the DB that interacts with my application (enroll and login).

2: and just to be sure the front end database is the one that has the table with the little arrow, which represents the table in the BE right?

3: and is it normal for only the table and form in the BE to open and be viewed. is that why i need a database password for it?

4: also do i change user permissions in the form thats in the FE or the BE

5: is the BE and FE meant to be in the same directory
 
Last edited:
1: is it normal for the FE database not to show the form and table data when i click on them? because when i do it doesnt open it says not a valid password. this is the DB that interacts with my application (enroll and login).

.......
No; Sounds strange :confused:
...

2: and just to be sure the front end database is the one that has the table with the little arrow, which represents the table in the BE right?

...
Correct.
...

3: and is it normal for only the table and form in the BE to open and be viewed. is that why i need a database password for it?

...
There should be no forms in the BE :eek: The BE should only contain tables.
...

4: also do i change user permissions in the form thats in the FE or the BE

...
Once again there should be no forms in the BE. So the very obvious answer is that User permissions should be set at form level, and these forms will reside in the FE.
...

5: is the BE and FE meant to be in the same directory
Typically the BE will reside on a server to which all users have access to. Each user has a copy of the FE on their machine which is then linked to the BE on the central server.

Having said that, the very first thing that you should do prior to splitting and distributing your solution, is to ensure that it is working correctly and that you have sufficient Error trapping to account user stupidity/errors. If you think that you have plug all the ways that you think a user may inadvertently find break your DB, you can bet your last dollar that someone will stumble across something you never considered.

At this stage I'm getting the sinking feeling that you are a long way from that position.
 
ensure that it is working correctly and that you have sufficient Error trapping to account user stupidity/errors. If you think that you have plug all the ways that you think a user may inadvertently find break your DB, you can bet your last dollar that someone will stumble across something you never considered.

how do i go about doing this? what are the necessary steps?
 
You need to consider;
  • Is the order in which the users enters data into various fields critical?
  • Do you want to allow various fields to be blank or not?
  • Are there fields that requires data in a specific format?
Then you need to put in place code to prompt the user to completed fields correctly and prevent the entry of invalid data. Hardest of all you have to second guess your user and prevent them from doing something right out of left field and crashing your DB.

The above list is only a short list of things that have immediately come to mind.
 
You need to consider;
  • Is the order in which the users enters data into various fields critical?
  • Do you want to allow various fields to be blank or not?
  • Are there fields that requires data in a specific format?.
i have done this already. my question really is how do i put the BE on a server, i dont have an SQl server does Access have one? plus is it necessary for me to do that has this is an assignment for college and i wont actually have any users. however i need to show that i can secure the database info from being manually edited i.e being updated in away other than through my program.

and just to be clear - if i was to send my FE to another computer and lets say that person edit details in it, will the BE tables data autiomatically be altered too? basically are the FE and BE always going to be linked even if they're on different computers?

and also to be clear my ultimate aim is to actually avoid users of my application which is created in visual studio (with an access database) to be able to edit the linked table in the FE. i have tried hiding it but a user can easily find the request to edit table.

Then you need to put in place code to prompt the user to completed fields correctly and prevent the entry of invalid data.
done this too.
 
i have done this already. my question really is how do i put the BE on a server, i dont have an SQl server does Access have one? plus is it necessary for me to do that has this is an assignment for college and i wont actually have any users. however i need to show that i can secure the database info from being manually edited i.e being updated in away other than through my program.

...

All you need to do is place a copy of the BE file on your server, and then use the Manage Linked Tables utility under Tools, Database Utilities menu.

Given that this is an assignment there is no need to do this.

....

and just to be clear - if i was to send my FE to another computer and lets say that person edit details in it, will the BE tables data autiomatically be altered too? basically are the FE and BE always going to be linked even if they're on different computers?

...
Yes once the FE and BE are linked changes made to the data via the forms will be reflected in the data stored in your BE.
...

and also to be clear my ultimate aim is to actually avoid users of my application which is created in visual studio (with an access database) to be able to edit the linked table in the FE. i have tried hiding it but a user can easily find the request to edit table.

done this too.
Typically splitting a DB is done for reasons other than securing it. Securing your DB and splitting it are two different subjects.

To secure your DB you need to consider user level permissions and doing things like hiding the Object window converting it to an MDE file or ACCDE for 2007. I have no idea if this facility is available in visual studio.
 
All you need to do is place a copy of the BE file on your server

could you tell me the steps to do that please?

To secure your DB you need to consider user level permissions and doing things like hiding the Object window converting it to an MDE file or ACCDE for 2007. I have no idea if this facility is available in visual studio.

yea i have made my front end ACCDE.
 

Users who are viewing this thread

Back
Top Bottom