|
I have MSAccess 2000 on Windows XP Pro - I have been using access on and off for ages but the version I am using now is all but unusable. I just added 460,000 into an emoty database - 124MB of data became 240MB of data - when I added another field (long integer, not indexed) then used VBA to add a sequential number the database became over 2GB in size. This always happens, meaning I cant do anything in Access.
Does anybody else get this?
Rugby League: The Greatest Game Of All.
|
|
|
|
|
Simple solution - SQL Server. Access is a desktop database relying entirely on the file system and was never meant to handle databases of this size, nor modifications to it like this. When you attempted to add the new field, you actually told Jet to rewrite the schema of the database and allocate room in the existing data for it. It doesn't do this in a seperate file. It does this inside the same .MDB file. In effect, you told Jet to duplicate everything in the database while adding the new field. Then, Jet will dump the original data, but not free the space at the beginning of the file that the original data occupied. If at all possible, open the database in Access and Compact it. This SHOULD rewrite the database back into a smaller file.
RageInTheMachine9532
|
|
|
|
|
I realise that but why would it swell in size to 2GB? I have been using access for ages and this is a new phenomenon. It has become almost unusable. The stuff I use access for isn't worth bothering with SQL Server (or it wasn't until thus happened)
Rugby League: The Greatest Game Of All.
|
|
|
|
|
Open it in Access and compact/repair it to get it back down to a normal size... It could also be that the database was corrupt to begin with?...
RageInTheMachine9532
|
|
|
|
|
The database wasn't corrupt, it was a brand new, newly populated, single table database. It happens every time, regardless of the data. Adding a single field should not inflate the size of the database up to 2GB - if it that happened MSAccess would have died a death a long time ago. I want to know why it is happening and if anybody else has had these issues.
Rugby League: The Greatest Game Of All.
|
|
|
|
|
After searching around the 'Net, it seems everyone is having this problem and it's not version specific. There are work arounds to compat the database back down, but nothing will prevent the bloat from happening. It appears to be the nature of the beast. I've never run into the problem to your extent simply because I do 99% of my work on SQL Server, even the small databases...
RageInTheMachine9532
|
|
|
|
|
I think you should compact and repair it before you do anything. The long integer type is not too long for DB.
|
|
|
|
|
Hi
I'm using a TextBox (or could use a RichTextBox) to display a file. I want it to default to showing the last few lines of the file, rather than the first. I've had a look at MSDN but I can't seem to find anything relevant. Can you help?
SH
|
|
|
|
|
Try this
<br />
rtb.SelectionStart = rtb.TextLength<br />
rtb.ScrollToCaret()<br />
Hope this helps.
Aaron Eldreth
TheCollective4.com
My Articles
While much is too strange to be believed,
Nothing is too strange to have happened.
- T. Hardy
|
|
|
|
|
You star! Thanks very much.
|
|
|
|
|
No problem. Glad I could help.
Aaron Eldreth
TheCollective4.com
My Articles
While much is too strange to be believed,
Nothing is too strange to have happened.
- T. Hardy
|
|
|
|
|
hi
i want to acccess the data field of a tcp packet( in a wireless network lan), so that when the packet leaves my computer it will encrypted with my algorithm and when it reached to the destination it will be decrypted.can anyone help me in that( i dont want to send my own tcp packet instead i want to use the packets which arrive and leave from the network traffic )
1-how can i access the data field of TCP packet?
2-how i use winpcap? if winpcap is used tp capture the packet.
3.should i have to place the field in the buffer or can i encrypt the field without any buffering?
i will be thankful if you people help me in that, i cant find anything around on the internet like that.
Thanks.
i am in real need these days.
Babur
|
|
|
|
|
If your asking these types of questions, you are definately not prepared for a project such as this. You'll need to know ALOT about the TCP/IP stack, how it works and why, about Windows device drivers, how to write them, debug them in kernel mode, and how to encrypt/decrypt data. There is no way this can be explained to you on the boards here.
Your complications will include re-writing the packet data, updating any packet checksums, field sizes, etc... But, you have to rewrite the packet only if it belongs to the application you want to encrypt data for. This alone will be a MAJOR problem for you to overcome since packet drivers don't care what applications are using them and no API functionality is in place to enable this.
You better bet to accomplish encryption is for your application to do the data encryption before it is serialized to the network...
RageInTheMachine9532
|
|
|
|
|
Friends, i want to ask that is there a way to auto fix columns in a data grid, I mean if i have to display just two columns in data grid and datagrid size is larger than two columns width.. they just r displayed on left and rest of the grid remain empty.. how can i FILL data grid with only two coloumns.. ? Should i have to chage the columns width manually.. but what if there are three columns sometimes to display?
looking to here from u soon
|
|
|
|
|
I dp not know open, read , write in vb.net., and the other thing is that, how create a data in vb.net, this is the line of code which i tried, but does not work at all. textbox1.databindings.add("text", data1, "Name")
tell me the steps how to do this things please who ever can tell me.
|
|
|
|
|
|
HI,
I have a problem with VB.net’s DataGrid. I wish to have two header rows with the bottom header nested in the top header eg The top header is Monday with Lunch and Dinner as headers underneath
____________________________
| __ Monday__ | __ Tuesday__ |
|----------------------------- |
|Lunch | Dinner |Lunch | Dinner |
|----------------------------- |
| ****| *****| ****| ***** |
|----------------------------- |
| ****| *****| ****| ***** |
|----------------------------- |
Cheers Shane
|
|
|
|
|
im a beginner using VB.net and im trying to display an autonumber in a vb.net form
ive got a person table (in access) with the fields person_ID, person_firstname, person_surname. The person_ID field is an autonumber.
Ive connected the database to a vb form (not web form). On the form ive added an Add button.
(So what im trying to achieve is when u click on the add button, the next availalbe autonumber should appear)
but i dont know how to do it. Every site ive looked at says to set autoincrement to 1. I have no idea how to do this, so could someone give me a step by step guide on how to do this, or send me an actual example of how it works
my email is cheetahshot@hotmail.com
thx
|
|
|
|
|
The autonumber won't be assigned until the record is updated. What you could do is when your Add button is clicked, add the new record to the database with blank fields. This will give you your autonumber. Then, bind your fields to the new record using the autonumber you got back as the key to make sure your only modifying that record. But, of course, this depends on the restriction imposed by the database, such as fields being tags as not being able to hold NULL values, or fields requiring values within a certain range, ...
RageInTheMachine9532
|
|
|
|
|
how could i add a blank line, then attach the records to that line? Would you be able to explain that a bit more?
|
|
|
|
|
Is this a Windows Forms app or a Web App? Are you displaying the records in the database with a DataGrid? What does your Add button do?
There is no one reference that will teach you how to do this. There are many different method to accomplish what your trying to do. Search the web for articles specific to the objects and statements your trying to use and Amazon for ADO.NET/VB.NET books. There are dozens of books on the subject and they can explain everything in much better detail that any article can.
But for here, post the code you're using so we can take a look at what your doing and make some recommendations. Normally, your app shouldn't care about the Autonumber until AFTER the new data is posted to the database, not before. This is because of data validation reasons and consistancy of the ID field.
RageInTheMachine9532
|
|
|
|
|
I'm having a problem accessing my database from a network drive. I'm using the Jet 4 connection to try and access the database. It tests fine, but when I debug, it can't find the database. I can put the database on my desktop's hard drive and set up the connection and it works fine, but not when it's on the network drive. If anyone could help me, I'd appreciate it. Thanks.
|
|
|
|
|
Does that account your using have access to the share on the other machine?
I should ask, does the account have the proper rights to the share? You can't use just read-only. The account must have read and write access...
RageInTheMachine9532
|
|
|
|
|
I am trying to get 5 random numbers between the numbers of 1 to 50 using vb.net. This is what I came up with so far:
Dim Array(4) As Integer
Dim Counter As Integer
For Counter = 0 To 4
Array(Counter) = CInt(Int((49 * Rnd()) + 1))
Next
Array.Sort(Array)
lbl1.Text = Array(0)
lbl2.Text = Array(1)
lbl3.Text = Array(2)
lbl4.Text = Array(3)
lbl5.Text = Array(4)
This code actually works but the thing is that it can pick the same number twice. I need all 5 numbers to be different. How can I achieve this?
Please help and thanks in advance.
Beginner in VB.NET
|
|
|
|
|
I've not put this in a compiler to check the syntax, so appologies in advance if I'm mistyped something. Here is a solution.
On each iteration the previous values are checked with the current random value and if they match a new random number is generated, this checking continues until there are no matches, at which point the value is put in the array and it moves on to the next element, like in your original code.
Dim Array(4) As Integer
Dim Counter As Integer
Dim CheckCounter As Integer
Dim Current As Integer
Dim IsOkay As Boolean
For Counter = 0 To 4
IsOkay = True
Do
Current = CInt(Int((49 * Rnd()) + 1))
For CheckCounter = 0 to Counter-1
If Current = Array(CheckCounter)
IsOkay = False
End If
Next
Loop While IsOkay = False
Array(Counter) = Current
Next
Array.Sort(Array)
lbl1.Text = Array(0)
lbl2.Text = Array(1)
lbl3.Text = Array(2)
lbl4.Text = Array(3)
lbl5.Text = Array(4)
Does this help?
"You can have everything in life you want if you will just help enough other people get what they want." --Zig Ziglar
Coming soon: The Second EuroCPian Event
|
|
|
|