从零基础学习数据库之DML语言(一)

来源:互联网 发布:deb文件安装 ubuntu 编辑:程序博客网 时间:2024/06/06 08:52

             (以SQL server2000为例讲解。一些数据库概念知识会在文章中穿插讲解,用到哪里讲哪里。不过也会有具体的概念文章进行补充。)

     

             DML(Data Manipulation Language)查询语言,它是Transact-SQL语言的重要组成部分,用来对数据库进行操纵。包括查询,插入,删除,更新数据等等。我们先学习最基础的几个语句:SELECT,INSERT,DELETE和UPDATE。

     

    首先我们学习select语句。

     

    先举两个例子

     

    USE pubs

    Select *FROM authors

    GO

     

     

    选择特定的列表

    USE pubs

    SELECT au_lname,city FROM authors

    GO

     

     

        通过这两个例子我们可以看出一些不仅数据库的知识,还有一些语法知识了。

     

        首先看第一个例子。

     

        首先第一句 USE pubsUSE是关键字,pubs是要利用的数据库的名称。说明我们下面的语句,是在pubs这个数据库中使用的。

        第二句 SELECT * FROM authorsSELECE是我们查询语句的关键字。"*"怎么理解呢?在我们使用windows的查询文件功能时候,经常使用到"*"""这两个通配符。当查找文件夹时,可以使用它来代替一个或多个真正字符;当不知道真正字符或者不想键入完整名字时,常常使用通配符代替一个或多个真正字符。如果我查询"*.exe",是查找目标文件中的所有exe文件,不区分文件名。

        回到我们的DML语言中,这个"*"号也这么理解。SELECT FROM英文就是“从哪里选择的意思” SELECT * FROM authors意思是查询authors表中的所有内容。怎么样,按照英文翻译,是不是这条语句变得非常的简单了?

     

       ("(Table)"示什么?一个数据库并非把所有数据都掺杂放到一起,那样显得杂乱无章。为了区分不同的类别数据,数据会被储存到各个表中。一个数据库由若干个"(Table)"构成。)

     

        第三句 GO,是批处理结束标识符,是结束标志语句。属于关键字。

     

            (不懂批处理?很简单,就是同时处理一批语句。在军训的时候,练习踢正步,教官喊"1",我们走一步,喊"2",我们再走一步。这叫一句一句的执行。然而,当我们熟练掌握踢正步后,教官只需要喊"正步走",我们便会自己踢着走了,在没有听到停止命令时就一直走下去,这就是批处理。理解起来同dos下的批处理bat文件。)

     

        下面是第二个例子。

     

        先找到不同的地方。我们把"*"号这个通配符换成了authors表中具体的列的名称。多个列之间只需要用","分开。如图,我们只显示出了au_lnamecity列中的数据。语法很简单吧。当然,用","割开的内容之间我们也可以做很多文章,","之间不仅可以写具体的列的名字,还可以用来将两个列关联起来一起显示,我们在下面的内容中会介绍。

     

    等等,au_lname是什么?怎么这个列的名称这么乱?这是一种命名规则,是人们长期以来总结的比较合适的命名规则,叫做匈牙利命名法。

    第一次看到这种命名时,相比把变量名命名成"a","b"或者"a1",虽然比较乱,但是这样命名的结果是有意义,更容易理解。当然,不可否认的是也许针对某个特别的编程实例会有更简单方便的命名,但是这种命名法在我们普遍命名中是应用比较广泛的。

    au_lname,前面的au是我们的“表”名称authors的缩写,l是“last”的缩写,last name意思是姓氏。这下好理解了吧!那fname呢?当然是first name,是名字的意思,咱们下面的介绍中会用到fname这个列名。

 

    好了,今天先到这里。下次见!

原创粉丝点击