
Answer
Avatar/Signature-
Posts
46 -
Joined
-
Last visited
Content Type
Profiles
Forums
Blogs
Events
Articles
Resources
Downloads
Gallery
Everything posted by Answer
-
Nerseus, you brought up a lot of good points that i hadnt thought about. Such as MSDE could just be a temporary thing. I have noticed that MS has discontinued jet with MDAC. Could be a sign. 10,000 Records is not normal at all. I tend to like to beat the piss out of things to make sure they will stand up and to get a good feel for it. 99% of the time, it will be inserting/deleting/updating one record. It is a vb.net project, and size i dont think will be an issue as 90% of the debase records are under 1mb and the rest are 3-5mb. One or two do get into the 100mb range, but there log databases which should be trimmed more regularly. Any my program will be maintaining them to around 30mb. the 20 or so dbase databases will be put into 2 or 3 different access databases. I think access is the way to go, it doesnt require a genius to handle it, plus it will allow any of my customers to edit the databases easily if they have office installed. I liked MSDE cuase it seemed like a better multiuser solution.
-
i Have reading a plethora of articles about Access and MSDE. It seems MSDE is a better database then access. Although i would like you database experts here to give me your opinion on what is going to work better for my situation. Its a vb.net project. What I have is about 20 dbase III databases. Now, i can access them just fine using jet on my local machine or across a network, the problem is, is that jet doesnt support multiuser access for dbase III. No lock file is created like there is when you use a access database. Now, I am going to distribute this app to our different companies. Each company will have its own databases. i am just guessing here, but probably 75% of the companies, there will be no need for multiuser access to the databases. The other 25% there will be some type of multiuser access. I would venture to guess that 20 users will probably be the max, and of course these users most likely arent going to be writing or reading all the time. Now i did some testing and using dbase accross a network on a file share was VERY fast. Adding 10,000 records only took .2 seconds longer then a database local on my harddrive. And thats over a 22 mbit wireless connection. But like i said earlier, multiuser = no no. So i have thought of 3 different options i could do. Write a class to import and export the dbase data into an access database then use the access database. I am familar with ado ( not ado.net ) and using jet. Write a class to import/export data into MSDE. I am not familiar with SQL type databases. Although i wouldnt mind learning as long as database access is going to perform on par with access. Use my own XML file to "lock" records and i will have to check the XML file to make sure no one else is using that record everytime before i add or do a update. - dont like this one. I like the idea of using MSDE but, i have some concerns. Such as it was kinda pain to setup on my local machine, so it might be a pain for the other 75% who dont need the multiuser access anyway. I know you can include it in a setup file, but i am not familar with doing it. It seems to that MSDE runs as service which uses more resources then acccess. And from my testing so far, adding 10,000 records is quite a bit slower then using access or dbase. I used an insert command, then did a executequery using a sqlcommand object for msde. What do you guys think? access or MSDE?
-
anyone?
-
Hi, I am currently creating a VB.NET app using ADO ( ADO.NET was to slow!!, if anyone has some help on this i would appreciate it ) and Dbase III databases. I cannot switch to anything else, it has to be dbase III databases. I have been accessing the databases locally for testing using Jet. my question is, how should i go about making my program available for multiple users. 10 users at the very most, but most likely only 2 or 3 will actually be using the files at a time. Each table is a seperate file and i have about 20 of them. 2nd, how do i make the db's available to my users. Do i just create a server computer then create a simple file share for other users on the network to access? LIke through drive mapping? 3rd, im creating classes for each dbase III file that will hide all the junk of ADO and provide simple methods of reading and writing to the files specific to the application. Should i use a dynamic cursor or a static cursor? I am thinking a static as dynamic doesnt allow for bookmarks. Also how do i for instance, if i have a tree control that is populated from the DB, and another use on a different computer say adds a record or deletes a record, the tree control is then not current, how do you guys handle updating the control so that when another user changes something, you can refresh it and be able to "see" the changes. Do you just refeth it on a certain interval or is there a trick or something that i just dont see? I am newb to creating frontends for a database and this multiuser stuff is rather tricky. So any help is Mucho Appreciated!
-
No Recordset, ADO.NET offers piss poor performance for ISAM databases such as dbase. At least that is my findings. I have spent days trying to get ADO.NET to meet ADO's performance. ADO.NET takes like 3 minutes to where ADO takes .4 secs
-
I a currently coding a project that uses several, well actually many databases. What i was thinkin of doing was creating a class for each db then coding in certain functions that are not included in ADO that i want. Such as a speciallized sorting and adding records except in a more user freindly way specific to each db. My question is, should i jsut make a property that exposes teh recordset for each class. Or should i make a base class that is inherited that would include a methods to do basic database stuff like moving, filtering etc.. This way the clients are not exposed to the recordset at all. Then make propertys for each db that would represent each field.value in the db i wanted to make available. Is there any downside to doing this that i cant see? I can see a ton of advantages. All of these classes will be put into a .dll for use in a larger program. this is a vb.net project also, if that makes any difference.
-
Sounds like a trojan to me. You better run a virus scanner or something.
-
http://www.codeproject.com/useritems/Simple_OCR.asp The one above uses the network to make a OCR program.
-
Hi, I am building a program and i want to add some OCR support to it. Basically all i want is to be able to scan in a page from a catalog and have it recongize the text. Is there some type of OCR control that is under $800 with no runtime royalties. I have been googling for a couple days now and i really havent found much. Other then some $5000 solutions which is out of the question. Thanks For your Help!
-
Thanks for the replies guys, i just read over the tutorial real quick that was in the knowlegde base forums. That link philprice provided has an example to download at the bottom, im gonna toy with it some and see what i cant come up with. Thanks for the help guys...
-
Hi, i am hoping to design a plugin based program that will allow me or anyone else that uses to my program to extend its capabilities. I already saw divils excellent plugin post but i was wondering if anyone knew of something more in depth. I am new to writing this kind of app, and i know they use "hooks" which i have a general idea of how they work but not enough to actually write one so its usable. I would like to make my app hve the ability so if someone say wanted to write a plugin that would automatically fill in some text box after the user got done entering information into a different textbox. That is just one example. I really have no idea of how to implement this and was wondering if anyone knew of someplace to find this kind of info. I did a couple searches on google etc... and was not able to find anything of importance.
-
i have to say that at first i was VERY reluctant to move to .net. Infact i hated .NET. But due to advice from the forum i bought a book and read 2 chapters out of the book, and now i LOVE .net. I will never go back. :)
-
I tried the code you posted and it wont work, says "Characters found after SQL statement" I have tried modifing it but i am unable to correct the problem. You have any ideas? Thanks for your Help Derek!
-
Derek, okay, i tried using a Command Object. I ahve posted the code below, using the command object was much faster then the previous way, however it still cannot touch regular ADO. Could it be becuase im accessing a DBASE III database and not a SQL database?? I have never used the Command object before so i dont really know what im doing, but this is what i came up with. Try Dim strConnectionString As String strConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\DATA;Extended Properties=dBase III" Dim objConn As New System.Data.OleDb.OleDbConnection(strConnectionString) objConn.Open() Dim dbCommand As New Data.OleDb.OleDbCommand() dbCommand.Connection = objConn dbCommand.CommandType = CommandType.Text dbCommand.CommandText = "INSERT INTO products( [iD], [catcount] ,[agrpcount] ," & _ "[pgrpcount] ,[order], [code], [name], [thumbnail], [image], [price]" & _ ", [cost], [desc], [weight], [taxable], [active]) VALUES (33,33,33,33,33,33,33,33,33,33,33,33,33,33,33)" Dim x As Integer PB1.Maximum = 5000 PB1.Minimum = 0 For x = 0 To 5000 dbCommand.ExecuteNonQuery() PB1.Value = x Next Catch ex As Exception MsgBox(ex.Message) End Try [edit]Added [vb][/code] tags[/edit]
-
Derek, could you please look at my post in the ado.net section and tell me what im doing wrong/give an example of how to correct it? You hit the nail on the head wyrd, you brought up a good point about the decompiling issue too, and since it should take me a year to complete the project, MS SHOULD have it fixed by then. Thanks for the info and support, sometimes you just need people to reinforce your decision to migrate. And since i do have year, by that time VB.NET will more commonplace.
-
Im sorry, could you provide me an example? i understand taht calling update 5000 is slow, but i already tried calling it from outside the loop and its still WAY slower then ADO.
-
Im debating on whether to migrate from VB6 to .NET, im about to embark on my first large project and i have considered moving to .NET, however im running into probs, such as the one i posted in the ADO.NET forum. I have read a ton of post about the goods and the bads about .net etc... but im wondering what your guys opionions are on my situation.. Im going to be creating my first large project, im guessing its gonna take around a year becuase i will be doing it during free time. I will be accessing dbase III databases, however the database could change down the road ( possibly SQL ), as of right now though they will not be changing. I have quite a bit of knowledge in VB6 but certainly not an expert.. I have picked up a book on VB.NET and have been reading it and there is a ton of stuff i like about the .NET framework, many things are included that i would have to write on my own if i were to create the program in VB6. I also like the fact that my VB.NET program has the possibility of being able to run on Linux, Which i really like. But i have heard alot of negative thing and also have noticed some negative things about .NET such as the IDE runs a lot slower, the program in debug mode runs a lot slower, and ADO.nET runs down right piggish! I also am concerned about my program possibly being decompiled, as i might wish to sell it later. Being that im familar and like the VB6 enviroment, although im sure i can get used to .NET after a while, do you guys think it worth my while to upgrade and learn .NET?? ps. the program has nothing to do with the internet really, any FTP usage or stuff like that i was planning on using the Microsoft Internet Transfer Control Thanks
-
Here is my code im using for testing purposes. Try Dim sConnectionString As String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=C:\DATA;Extended Properties=dBase III" Dim objConn As New System.Data.OleDb.OleDbConnection(sConnectionString) objConn.Open() Dim da As New System.Data.OleDb.OleDbDataAdapter("Select * from catxprod", objConn) Dim ds As New DataSet() da.Fill(ds, "catxprod") Dim dt As DataTable = ds.Tables("catxprod") 'Dim dr As DataRow = dt.Rows(1) 'MsgBox(dt.Rows(1).Item(5)) Dim x As Integer, row As DataRow 'Dim strCommand = ("INSERT INTO products( [iD], [catcount] ,[agrpcount] ," & _ '"[pgrpcount] ,[order], [code], [name], [thumbnail], [image], [price]" & _ '", [cost], [desc], [weight], [taxable], [active]) VALUES ('ID')") Dim strCommand = "INSERT INTO catxprod([cat_id], [product_id], [order]) VALUES (@cat_id, @product_id, @order)" da.InsertCommand = New OleDb.OleDbCommand(strCommand, objConn) Dim param As OleDbParameter '@ID Parameter param = da.InsertCommand.Parameters.Add(New OleDbParameter("@cat_id", OleDb.OleDbType.Integer)) param.SourceColumn = "cat_id" param = da.InsertCommand.Parameters.Add(New OleDbParameter("@product_id", OleDb.OleDbType.Integer)) param.SourceColumn = "product_id" param = da.InsertCommand.Parameters.Add(New OleDbParameter("@order", OleDb.OleDbType.Integer)) param.SourceColumn = "order" 'Dim autogen = New OleDb.OleDbCommandBuilder(da) 'MsgBox(autogen.GetInsertCommand.CommandText) PB1.Maximum = 5000 PB1.Minimum = 1 'Dim x As Integer For x = 1 To 5000 row = dt.NewRow() row(0) = 444 row(1) = 345 row(2) = 111111 dt.Rows.Add(row) da.Update(ds, "catxprod") PB1.Value = x Next The code above takes forever to complete, i had the same problem with regular ADO and i somehow fixed it. Can anyone help optimize this code so it only takes say .3 seconds like the regualr ADO did? btw...i have seen a lot of people rave about how ADO.NET is better, so far if you ask me, its a pain in the arse, it takes 5 times the amount of code for me to do the same thing that i could in ADO!! Thanks!
-
Thats a good question...i know its the academic verison as i got it free from microsoft along with windows XP at this seminar thing they held. I jsut checked oin the cds and all it says is academic "Visual Studio .NET Academic incorporates all the features of Visual Studio .NET Professional, plus several new instructionally targeted features, including Assignment Manager, student-specific documentation, and sample code. These features provide professors, instructors, and students with a superior development environment for academic use. " i just pasted that from MSs website so im going to assume its the same as professional.
-
Thanks for the reply! That code works well for some stuff that iwant to do but i dont think it will allow me to do databinding at designtime will it? if so could you point me in a direction that tells me how, as i cant find anything.
-
Hi Guys, Well im a newb at vb.net and im trying to access me dBase III database during design time using the Connection wizards thingy. Well it isnt working so well. I would like to use the Jet driver and i know i can becuase i have code that uses the jet provider to access the database during runtime ( code ). However i would really like to be able to set the connection up at design time. So far what i do is click on the server explorer, and add a new connection to database. I choose the Jet 4.0 driver then click next, for the database name i enter the path to where the database is located BUT i DONOT enter the database name. I then goto the all tab and under "extended properties" type dbase III. This somewhat works, as when i click test connection it says everything is ok, but when i click OK, no component is created nor i can i browse my tables with the server explorer like i can with a access database. It seems like its not working! Thanks for your help. P.S. So far VB.net is much harder then vb6, with vb6s datacontrol it was very simple, and even the Microsoft ADO control was extremely simple to use.