- Cukor丘克
SQL的入门基础
SQL是什么?
SQL是人类和数据库管理系统打交道的语言。类比C语言,C语言是人类计算机交流的编程语言之一,同样的SQL也是人类和计算机交流的一种语言,只不过SQL主要面对的是数据库管理系统。
目前主流的数据库管理系统有Oracle、SQL server和MySQL等。
SQL是这些数据库管理系统的标准语言。不同的数据库管理系统会有自己的一些类似SQL语言的其他语言来专门操作,又为了能统一,所以SQL就是各个数据库管理系统所通用的语言。
在MySQL中的一些SQL语句在SQL server中是使用不了的,这是因为数据库管理系统之间的差异而造成的,但是差异的地方不多。
以下的SQL全是基于SQL server.
在使用数据库管理系统来管理我们的数据之前,首先是先打开对应数据库管理系统的服务,然后连接对应的数据库管理系统。
在数据库中操作的基本过程
假设现在需要把一个学生的信息存入到数据库中,并不是直接一步到位的,而是需要经历以下的几个过程。
- 创建数据库
- 使用数据库
- 创建架构
- 创建表
- 将数据插入到表中
以上的流程可以看作是以下的操作:
- 创建房子
- 进入房子
- 创建房间
- 创建床
- 把物件放到床上
所以数据库(database)就对应着一个房子,架构(schema)就对应着一个房间,表(table)对应一张床。
在MySQL中database和shema是一个意思,在SQL server中database和schema是有区别的。具体的区别就不说了,可以以上面的例子看出database和schema的关系。
简单理解:
MySQL的房子格式:房子没有其他的房间,所以database和schema没有区别。
SQL server的房子格式:房子里面还有其他的房间,所以database和schema有区别。
创建数据库(创建房子)
数据库是存放具有相互联系的数据的集合。
在学习数据库的时候,一定是基于某一个数据库下进行对某个表的进行操作。人要休息,当然首先得有一个房子之类的,要不然怎么遮风挡雨。
现在已经连接sql server数据库管理系统。
创建数据库的SQL代码:
-- create database 数据库名;
create database TestDB;
-- 创建了一个名字叫做TestDB的数据库
- SQL不区分大小写
- 在MySQL中需要以分号结尾
- 在SQL server中一条SQL语句的结尾可以不使用分号结尾,使用分号结尾也没有任何问题。
- 因为个人习惯的原因就加上分号,作为SQL语句的结束标志。
SQL中-- 后面是注释。
使用数据库(进入房子)
这一步是非常必要的。初学者往往忘记了这一步,结果到最后把表建立起来之后,找不到刚刚建立的表的位置,但是又可以对表进行对应的操作。这个是因为Ta没有进行“使用数据库”这个操作,就默认使用的数据库是上一次使用的数据库,在SQL server中,刚刚连接时使用的是哪个数据库就是把表创建到哪个数据库中了,一般默认是在master数据库中。
使用数据库的SQL代码也很简单: