|
Hi,
Relational databases have been around for some time. Does any one know when a new type of database will emerge? I have read up on about object database management systems (ODBMS), object relational databases, and I have been working with an RDBMS for years now.
How does any rate the database called Matisse? Apperently it was the first of it's kind, are there any others that are good, or better?
What database does Google use?
I hope to hear many opinions!
Regards
ma se
|
|
|
|
|
ma se wrote: What database does Google use?
No idea and no way to clarify. After doing some googling I found that, they use their own special database and file system software for the main indexing of the data returned by their crawlers. But someone is telling highly modified postgreSQL and also MYSQL. Which to believe ? Google had 100 million pages in their index in 1997. And they wrote that their total DB capacity is something like 128GB !!! Amazing ? Do you have any idea about how they will store information ? Will they store all informations from webpages ?
ma se wrote: I have read up on about object database management systems (ODBMS), object relational databases
ODBMS !! Sounds great. I think it has the Ability to map data stored in a database directly to the language object representation.
ma se wrote: How does any rate the database called Matisse? Apperently it was the first of it's kind, are there any others that are good, or better?
No idea regarding Matisse ? Is it released ?
|
|
|
|
|
Yeah go and check out http://www.matisse.com/[^]. I think I found a sample on how to connect on codeproject, it looks really cool and different.
|
|
|
|
|
Hi all
I need to implement site search for my website. Which is the best way to implement one ? What is your idea on maintaining indexes ? I am using MYSQL database.
|
|
|
|
|
Hi all, I started playing with the ADO.NET, so what I did was the following, added a dataset to my solution, draged the table from the database onto the dataset via the Database explorer, then I created a new form, set the dataset to GridView in the datasource explorer and then dragged the dataset from the datasource explorer onto the form, it then created the grid and all the columns etc. Now for my problem, it loads the default values in the database table in the grid, I can then modify the values and create new values and they are all stored in the dataset, but never updates to the table, so if I close the program and opens it none of the changes made and new values are there. So how can I save the values from the dataset to the database.
Here's the code that I use to save the changes made.
private void productsBindingNavigatorSaveItem_Click(object sender, EventArgs e)
{
this.Validate();
this.productsBindingSource.EndEdit();
this.productsTableAdapter.Update(this.productsDataSet.Products);
}
He who laughs last is a bit on the slow side
|
|
|
|
|
I think you have to writte update command for the dataset. This will come when you are designing the dataset
|
|
|
|
|
Do you mean the table adapter for the dataset, because I have the Select, Update, Insert and Delete commands for that, and they are working and tested
He who laughs last is a bit on the slow side
|
|
|
|
|
Hi,
Our system is up and running with the client , but we often need to make many changes in Database structure (Add/Modify views,tables,SPs etc). Now every time we make an update here, we need to keep our database definitions consistent with client's version of DB. Can you please suggest some useful tool which can compare Database definitions and points out all differences.
P.S. We used Database Comparator before. But its not very efficient. We added & re-ordered coloumns in a View and it couldnt track that change.
Any help is appreciated. Thanks
"Learn from the mistakes of others... you can't live long enough to make them all yourselves!!"
|
|
|
|
|
I have one doubt
After client using your database, is it a good practice to do changes in database definition frequently ?
|
|
|
|
|
Idealy: NO , Practically: Yes
cuz you cant guarantee whats next Change request
|
|
|
|
|
yeah, Frequent changes are bad, But I am asking any tool which can help, no matter one change it rarely!
|
|
|
|
|
|
Hello,
I'm getting data via file transfer-interface and I'd like to import it to a sql server 2005 database. Now my question: What is the best way to write the data to the database (I'm using C#)? Open a SqlConnection, transfer each single data row and the close the connection again? This can't be the best solution I think. Is there a better, faster way to get the data into the database - e.g. with a dataset? It's a little complicated, because I've corresponding data tables and I've got to query these tables for primary keys, to be able to fill the new data rows and import the new data properly. I already know DataSet.Update() but then there's still the problem that I've got to query the related tables for the ID (primary key) before I can update the DataSet and the database. I simply can't figure out how I can avoid the query for these IDs. Maybe someone got an idea for this problem?! Thanks in advance.
Tobias
|
|
|
|
|
Tobias Schoenig wrote: What is the best way to write the data to the database (I'm using C#)?
There are many ways, it depends on your situation.
Tobias Schoenig wrote: Open a SqlConnection, transfer each single data row and the close the connection again?
Probably not, you are receiving the data in a constant stream are you not?
Open connection, INSERT many rows, close connection.
Remember that you can perform multiple actions in a single SqlCommand if needed. Or you can repeatedly execute the SqlCommand with a different set of parameters each time.
|
|
|
|
|
Colin Angus Mackay wrote: Probably not, you are receiving the data in a constant stream are you not?
I read out the data line per line and not in a constant stream. I know that i can perform multiple actions in a single SqlCommand but then i still got the problem that i've got to query the related tables for the IDs of corresponding rows. Is there no way to avoid these queries? Is it possible to query the ID of a related row and insert the new data row into the database? Maybe anyone has an example for such an SqlCommand.
|
|
|
|
|
Tobias Schoenig wrote: I read out the data line per line and not in a constant stream.
Sorry, what I meant was: You are running as a batch process rather than an interactive one. The data will be read in line by line, but it does not require user interaction to keep this process going.
Tobias Schoenig wrote: Is there no way to avoid these queries?
If you need to keep the data related, then you'll have to perform the queries.
If the relationship is in the form of a lookup with only a few entries then you could do one query to bring the data to your .NET application.
If the joined data is more dynamic (i.e. it will also be changing during the upload) then you might consider using Stored Procedures. The stored procedure takes as parameters the data to be inserted and does the lookup internally - thus you only have one round trip to the database per insert.
|
|
|
|
|
Colin Angus Mackay wrote: Sorry, what I meant was: You are running as a batch process rather than an interactive one. The data will be read in line by line, but it does not require user interaction to keep this process going.
The process is a batch process called every x seconds (10s - 30s) and does not require user interaction.
Colin Angus Mackay wrote: If the relationship is in the form of a lookup with only a few entries then you could do one query to bring the data to your .NET application.
The problem is, that I've got to do the lookup for each data row (about 100 entries) I want to insert and this adds the same number of queries to my application, which takes its time. The data is not that dynamic that stored procedures would be effective. The question is, is it possible to do this query together with the insert in one SqlCommand?
|
|
|
|
|
Tobias Schoenig wrote: The process is a batch process called every x seconds
Okay - Open the connection at the start of a batch, issue your commands then close the connection. 20-30 seconds later you repeat the process.
Tobias Schoenig wrote: The problem is, that I've got to do the lookup for each data row (about 100 entries)
100 entries in the look up is not much. You could pull that across once and put in in a hashtable.
Tobias Schoenig wrote: The question is, is it possible to do this query together with the insert in one SqlCommand?
Yes.
|
|
|
|
|
Ok, thanks for your answers! I'll try to improve the performance of the data import by merging the query and the insert together in one SqlCommand.
|
|
|
|
|
jithbiz0033 wrote: The following coding threw the error
What error?
|
|
|
|
|
Hi,
I am working with a program for uploading and downloading files.I am able to upload and download files with SqlConnection.But when I use OleDbConnection it shows following error while uploading the files
OleDbException : "Must declare the variable '@id'."
Error Code : -2147217900
{"Must declare the variable '@id'."}
I am using the parameters to the insert the values.for all the parameters it shows the same kind of error.
Please give your valuable Suggestions or codings
Thanks
Jith
|
|
|
|
|
jithbiz0033 wrote: Please give your valuable Suggestions or codings
Without seeing your code, it is difficult to suggest a corrective solution.
|
|
|
|
|
Hi,
The following coding threw the error.
OleDbConnection mycon = new OleDbConnection(con);
OleDbCommand mycom = new OleDbCommand("insert into files (Id,FileData) values (@id,@filedata)", mycon);
OleDbParameter param0= new OleDbParameter("@id",OleDbType.Guid);
param0.value=id; //initially got guid in id;
mycom.Parameters.Add(param0);
OleDbParameter param0= new OleDbParameter("@filedata",OleDbType.VarBinary);
param1.value=filedata; //initially got byte[] in filedata
mycom.Parameters.Add(param1);
mycon.Open();
mycom.ExecuteNonQuery();
mycon.Close();
Now I changed my coding as below.
OleDbConnection mycon = new OleDbConnection(con);
OleDbCommand mycom = new OleDbCommand("insert into files (Id,FileData) values (?,?)", mycon);
mycom.Parameters.Add("@id", OleDbType.Guid).Value = id;
mycom.Parameters.Add("@filedata", OleDbType.VarBinary, fileData.Length).Value = fileData;
mycon.Open();
mycom.ExecuteNonQuery();
mycon.Close();
It is working fine.But I want to know why the first coding threw the error
Thanks
Jith
|
|
|
|
|
It may be possible that your back end database doesn't understand named parameters and uses the parameter's position instead. Also, it will prefer the ? notation for positioning parameters rather than the @ notation.
|
|
|
|
|
Hi,
Thanks for the explanation.I didn't really knew that the SQL servers prefers different parameters.
Thanks
Jith
-- modified at 0:50 Thursday 22nd March, 2007
|
|
|
|