SQL入门学习-1.基本概念
1.1.1 数据库——保存有组织的数据的容器。
不要与DBMS的概念混淆,DBMS是指数据库管理系统,而一般的我们是通过DBMS来访问数据库的。
1.1.2 表——某种特定类型数据的结构化清单
同一数据库中不能两次使用相同的表名
模式(schema)——关于数据库和表达布局及特性信息。
1.1.3 列与数据类型
列——表中的一个字段。所有表都是由一个或多个列组成的。
正确地将数据分解为多个列极为重要,这会影响到以后的数据分类与过滤
数据类型是为了限制存储在列中的数据种类,如数值字段中不能录入字符值
1.1.4 行
行——表中的一个记录
主键——每一行都应该有可以唯一标识自己的一列(或一组列)
×任何列要作为主键必须满足以下条件:
×任意两行都不具有相同主键值
×每行都必须具有一个主键值(不允许为NULL)
×主键列中的值不允许修改或更新
×主键值不能重用(如果某行被删除,它的主键不能赋给以后的新行)
1.2 SQL
SQL是结构化查询语言,一种专门用来与数据库通信的语言。
SQL是通用的标准,几乎所有DBMS都支持SQL。
SQL由有很强描述性的英语单词组成
SQL对于不同的DBMS可能有不同的扩展,例如:Oracle的PL/SQL、微软的Transact-SQL
额外知识:
ODBC(开放数据库互连)
提供了一种标准的API方法来访问DBMS,简单来说就是一组与OS无关、与具体DBMS无关,与具体编程语言无关的接口。
诞生背景:在ODBC诞生前,如果想开发数据库应用程序,必须使用相关DBMS配套的工具集或者使用嵌入式SQL来访问数据库,ODBC就是为了解决这种差异性而诞生的。
实现方式:
通过ODBC管理器配置相应数据库的数据源信息,ODBC管理器去调用对应DBMS的ODBC驱动程序来访问到指定的数据库。
OLE DB(对象链接嵌入数据库)
用途与ODBC类似,可以说是ODBC的继承者,是一组以统一方式访问不同类型的数据存储模型的API,需要访问哪些具体的数据存储模型,只需通过特定的OLE DB Provider来访问(如:SQLServer OLE DB Provider),这点与ODBC的驱动程序很像。假如说ODBC是针对各类数据库设立的话,OLE DB就是针对各类数据存储模型来设立的,涵盖的范围更广,虽说意图挺好的,但其他公司愿不愿意支持微软的标准就是另外一回事了。
ADO
正式点说,是一个用于访问数据源的COM组件,它提供了编程语言和统一数据访问方式OLE DB的一个中间层。通俗点说,OLE DB更接近底层,而实际开发时是通过ADO来使用OLE DB的。