开发者

SQL Server - Database Questions

I'm a bit confused at the moment.

1) I am using ASP.NET and building a web interface based on an Access database. However, I'm told it doesn't use the Access database - it uses Jet.. What does this actually mean as I select 'Microsoft Access Database' when I find the data source, so isn't it an Access database?

2) Is there such thing as an SQL database? As isn't a MySQL database an SQL database? And doesn't Microsoft's SQL server host actual SQL databases? If not, what does it host? And what actually are things such as MySQL if they aren't SQL databases?

3) Is it possible to create an SQL database that is simply an SQL database or does it have to be a varient such as MySQL?

4) Can I create web forms in ASP.NET to edit the Access/(whatever DB I make it) data and add new records? If so, how would I go about doing this and are there tutorials for this?

Bit long I know, 开发者_开发知识库but if anyone can help..

Thank you!


  1. Jet is the 'connection engine' or 'driver' that Windows uses to communicate with your Access database/file.

  2. SQL is the acronym for Structured Query Language. Some people use the term SQL coloquially or shorthand for Relational Database Management System (RDBMS or platform). A "SQL database" is most likely meaning a database engine/RDBMS that implements the SQL language; meaning you can query/manipulate it using SQL statements/command. Database vendors like Oracle and Microsoft, among others, make RDBMS products (Oracle 10g + MySQL and SQL Server, respectively) which host databases.

  3. Likely answered by above.

  4. Most definitely. That's another topic onto itself. This tutorial, among others, can get you started.


1) I can't help you here

2) You are confusing terms. SQL is a language that one uses to write queries against a database system. The overall database system is often called a RDBMS. Various vendors provide different RDBMS. MySQL is one, SQL Server (from Microsoft) is another, Oracle has another, SQLite is another, PostgreSQL is another, etc.

3) You must choose a RDBMS, such as MySQL, then you can write SQL against it.

4) Yes, you can. In .NET, LINQ is a popular way to do this. You can try out LINQ expressions using LINQPad. The more traditional way is to use the SqlCommand class. For instance, with MySQL you would first install MySQL Connector/NET - here is a tutorial for that.

Just google around for C# and SQL - loooots of people have dealt with this issue before (:


Answers.

  1. Microsoft Access is a product built on top of http://en.wikipedia.org/wiki/Microsoft_Jet_Database_Engine and that is where "Jet" is coming from.

  2. SQL is short for Structured Query Language. It is a standard which many database engines. try to implement. Any database that implements the standard to some extent can be called SQL. (Note, MS Access and MySQL both implement the standard in non-standard ways.)

  3. Your question is like asking whether it is possible to have a car that is just a car and not a variant like a Toyota Yaris.

  4. There are many tutorials out there. Please note that if you are just starting I would strongly recommend that you not use MS Access. Pretty much any other option would be better, including SQLite.


  1. No idea

  2. Yes, it's true, but in general it is considered more proper to say "relational database," because what's important about relational databases is that they're relationally structured, more so than that they use SQL to query them. You could even have a relational database without SQL, but I'm only aware of one and nobody uses it. Saying "SQL database" says more about you than the database. :)

  3. Not especially. You can restrict yourself to SQL that is likely to work on different databases, but all relational databases have differences. It's very unlikely, for example, that your CREATE statements will be fully portable. It's much more possible to make your SELECTs portable, but even there, it becomes a question of which features do you want to not use.

    Your application must eventually actually connect to a real database anyway. You can push that decision around but you must eventually make it. Abstraction layers exist to mitigate the problem, but they often become a problem all their own.

  4. No idea.


  1. Access is a database product from Microsoft and, at some point, they broke out the database "engine", called Jet to ship as a separate component, allowing developers to use it stand-alone. You can use Jet without Access. Jet is the engine that does the work and Access includes both that and the fancy GUI and other tools, none of which are needed for real database use, though they're sometimes handy for database design.

  2. SQL is a standard data definition and data manipulation language (DDL and DML). It is not a product per se. There are many products that implement SQL, such as DB2, Access, MySQL and (some might say) Oracle :-)

  3. See 2 above. Provided you don't use any vendor-specific features, your DDL/DML should be portable to all database products (albeit at the cost of possibly being less optimised).

  4. Yes. I would start by whacking asp net web form crud into that Google search control you probably have somewhere at the top of your browser.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜