上次介绍了如何在SQL Server中建立数据库和表,并且做备份和还原。这一次将用上次建立的School数据库做演示,学习SQL语句。本文为0基础入门级别,所以介绍的知识非常有限,例子也是最简单的,还是建议大家买本SQL的书学习。 先回顾一下,上次我们建立的数据库和表结构如下: School数据库里只有一张Student表,其中Id是自增长的主键。下面我们以它为例,来演示SQL语句的基本用法。 在SSMS中编写SQL脚本的方法是:点击工具栏上的“新建查询”,在编辑器中输入SQL脚本,选择一个正确的数据库,检查语法正确后,点击“执行”,最后在消息面板可以看到执行结果。如下图: 一、 使用SQL语句创建表 除了前面一片文章介绍的用图形化界面建表,我们还可以用SQL语句来创建表,创建Student表的SQL脚本如下:
这段脚本不必去记,可以使用SSMS生成。不过当我们用程序去创建表的时候,就需要手写SQL脚本的能力了。 二、 插入数据 例:向Student表插入一条新记录。
执行完成后,右键点击student表,选择“选择前1000行”,来检验我们的执行结果。 在下面的结果面板里,已经显示了Student表现在的数据。
三、 查询 在刚才点击“选择前1000行”之后,你可能注意到了SSMS自动为我们编写了查询脚本。这就是现在要介绍的。 刚才的脚本是:
其中TOP 1000表示前1000条记录,通常TOP语句都会和ORDER BY 排序一起使用,这在后面会介绍。如果你希望查询所有的数据,就把TOP 1000去掉即可。 另外,SELECT你可以省略后面的字段,用*代替,表示希望查询所有的字段。
这条语句的结果和之前是一样的,因为之前的SELECT语句也是筛选全部的字段,并且我们目前只有一条记录。 为了介绍后面的技巧,我先给在表中插入一些别的数据。最后结果如下: 现在,我们的SELECT语句可以玩更多的花样了。比如: 按Id从大到小排序:
按条件查询(匹配Address为AAAAA)的记录:
配合起来也能用: SELECT * FROM Student WHERE Address = 'AAAAA' ORDER BY ID DESC 四、 修改 如果我们需要修改记录,就要用到UPDATE语句。比如Stone的地址改为BBBBB:
当然,你也可以批量UPDATE,这取决于后面的WHERE语句。 五、删除 最后我们来学习如何删除记录。这个非常简单,不过得注意WHERE条件,以免误删。比如我要删除Id为5的记录:
最后扯一个小常识。细心的读者可能注意到了,本文所操作的Student表,Id居然不是连续的,读者可能会问了,这个不是自动加1的吗?却是是这样。但数据库的机制必须确保这个Id的唯一性,因为他是主键,数据库也要保证完整性,因为这个Id可能在别的地方被使用。如果因为删除了某条记录而自动更新这个Id的话,那么引用这个Id的地方就会指向错误的位置,毕竟数据库无法知道这个Id到底最后给谁用了。它可能是别的程序,别的表的外键,或者网络上某篇新闻的Id。 其实最后我想说的是,本文只是0基础入门,没有介绍过任何关系型数据库的基本知识,但这些知识非常重要,读者如果想学SQL Server或者其他数据库,一定得去看有关的书籍。 |
|