首页 > 代码库 > SQL Server 2008从基础开始学习历程(1)------创建表与查询

SQL Server 2008从基础开始学习历程(1)------创建表与查询

[by:yy] 

 

无论我们学什么呢,都要讲究一个Why,一个How。那么我们为什么要学SQL呢?无非就那么几点。

1.为了适应其他技术,和其他技术配对而学。

         我个人的理解呢,只要在IT行业,无论你学什么,或者做什么工作。都离不开数据库。而学习数据库呢,又太文字化了,看的心里就烦。我是很抵触文字的。看着一大排一大排的字,就怕。可能是大天朝的教育所致。已经怕了学生生涯了。

2.为了适应社会而学。

         随便找个招聘信息,都会有标注需要会SQL语言啊。了解MySql呀。会搞Oracle呀。所以呢,为了能在找工作的时候加分,不得不学习SQL语言。yy我当年也年少轻狂过,这也怪我在大学时代里没有重视到这一点,导致现在的悲剧。不得不重新学习SQL,想想当年在大学的时候,教SQL的老师喜欢把衬衣扎进他那红色的内裤里,还总喜欢用他那恶心的声音对我们说“我用我那富有磁性的声音来给你们上课!”我当时上一堂Sql课,简直比上坟心情还沉重。真是一代老师毁一代人。但是呢?步入社会后,又不得不适应社会。所以呢,我们一起学习SQL吧!^_^

3.为了高薪。职场人不变的目的。

         我是做测试行业的,而测试行业呢,根据有经验的大神透露,80%性能瓶颈会出现在Sql中,所以呢,我要是能解决这些,做好数据库的调优工作。高薪?妥妥的。很多企业并不是怕员工拿的钱多,他们怕的是就是有钱,也找不到优秀的员工为它卖命。有本事的人,都自己创业去了,谁喜欢每天帮别人搞东西,还受老板的气呢?所以说嘛,这种受气的事,就让我来默默承受吧。O(∩_∩)O哈哈~

 

好了,闲话也说的差不多了。来点正经的。我现在也是个Sql新手,本来没有本事在各路大神面前哗众取宠。但是我还是想默默记录下来,我学Sql的艰辛历程。如果同样跟我的新手的话。可以跟我一起学习,讨论。我会把我的一点一滴全部记录在这个Sql基础系列中。希望能对一些还在找工作的苦B的IT民工一点帮助。现在来讲讲,怎么学习SQL语言。

 

yy我学习SQL用的是SQL Server 2008 R2

下载相关参考:http://blog.sina.com.cn/s/blog_4aedf6370101j9tz.html

1.学习SQL语言,肯定是要有实例的。那么我们先从创建表来开始讲解。

那么我们打开SQL Server 2008 R2,点击下图中的“新建查询”来打开SQL语言编辑器。

 

 

创建表的语法是:

create  table "表格名"

(

         "栏位1" 数据类型,

         "栏位2" 数据类型",

         ...

)

create                 --->翻译是“创建”

table                   --->翻译是“表”

数据类型             --->数据类型呢,主要是为了向内存条申请多大的数据空间。如果数据类型申请过大,可能造成内存空间浪费。yy家的机器大土豪用的,32G内存随便搞。当然啦,设计数据库的人要重视这一点,不能跟我一样,乱定义数据类型。数据类型也分很多种的,比如图片类型image、数值整型int、小数点的浮点型float、字符串类型char等等,很多啦。

数据类型详解:

http://note.youdao.com/share/?id=23a4f3e8d2e5e01ae0be8e93271cde2e&type=note

如上代码,其实翻译一下,很好理解的吧。注意一下,每个字段和每个字段需要用","逗号来隔开哦。

那么继续,我们创建一个员工的考勤表吧:

下图中的数据类型nvarchar(50)是定义数据类型可以容纳50个字符哦。

nvarchar(50) 汉字和字母一样都是50个 

varchar(50) 汉字25个,字母50个 

代码如下:

create table AttendenceSheet

(

    "ID" nvarchar(50) ,

    "EmployeeName " nvarchar(50) ,

    "Department " nvarchar(50) ,

    "Job" nvarchar(50) ,

    "Sex" nvarchar(50) ,

    "Age" nvarchar(50) ,

    "EnTime" nvarchar(50) ,

    "ComeLate " nvarchar(50) ,

    "LeaveEarly " nvarchar(50) ,

    "Leave " nvarchar(50) ,

)

这里一定要选择“数据库”哟,要么你自己都不知道把表建立到哪里去了。

 

点击“钩钩”查看语法有没有错误

 

 

再点击“执行”按钮,创建表。

 

我们反键点击“用户”刷新下。这个用户是创建数据库时候,自己建立的。不理解的可以百度一下。“SQL2008 新建数据库”

 

这下我们可以看到。我们的AttendenceSheet表,已经建立好了。

 

 

你如果在点击“执行”就会报错了,提示“数据库中已存在名为‘xxxxxx‘的对象”,因为我们已经把表给建立了。在建立的话,不就重复了吗?所以SQL您报错,我们理解。^_^

 

 

好吧,表已经建立,我们怎么看呢?这时就要用到查询语句了。

select * from "表格名"

select                 --->翻译“挑选”的意思

*                       --->“*”代表所有的意思,当然啦,如果想查询其他字段,比如“ID”可以把“*”改成“ID”就行了,如select ID from AttendenceSheet。当然啦,你的表格里面,要有“ID”这个字段栏位,才能查询的到。

from                   --->翻译“从;与”的意思

简单来说,这句翻译成中文就是“从‘表格名’中挑选所有的内容啦”

好吧,我们查询一下刚刚建立的表

select * from AttendenceSheet

这时我们选中状态下,点击“钩钩”“执行”。但是为什么要选中呢?因为SQL2008有个特点,可以在一个SQL语言中,选中某一段,就执行选中的那段代码。很方便吧。^_^

 

我们的表中,还没有数据呢。我们来添加一些数据吧。

SQL语法

insert into "表格名"

(

         "栏位1",

         "栏位2",

         ...

)

values

(

         ‘栏位1对应的值‘,

         ‘栏位2对应的值‘,

         ...

)

那么,我现在开始添加数据啦。

insert into AttendenceSheet

(

    "ID",

    "EmployeeName " ,

    "Department " ,

    "Job",

    "Sex" ,

    "Age" ,

    "EnTime",

    "ComeLate " ,

    "LeaveEarly " ,

    "Leave " )

values

(

    ‘1‘,

    ‘cs‘,

    ‘测试部‘,

    ‘测试员‘,

    ‘女‘,

    ‘35‘,

    ‘2014-2-1 10:30:00‘,

    ‘True‘,

    ‘True‘,

    ‘False‘

)

 

这时我们查询一下这个表,还记得怎么查询吧。

select * from AttendenceSheet

 

这下有数据了,我们可以看到,叫cs的这个魂淡,迟到,早退还不请假。早晚被开除^_^

 

总结

这篇是主要讲了3条SQL语言

1.用SQL语言创建表

2.在表中插入数据

3.查询表

以后争取每周都能更新,yy在完善自我的同时也希望对新手有帮助。

 

小练习

在Attendencesheet表中,插入下图的10记录。