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记录。