sql入门经典学习

        数据库产生于20世纪60年代,主要用于办公自动化,特别是数据存储的自动化和以前需要的大量手工劳动检索任务。它的主要优点包括数据检索的快速性和高效性,同时在数据之间相互关联,建立一定的规则后可以保证增,删,改,查数据过程后保持数据的一致性并减少数据冗余度,这样使数据共享变得更加方便快捷。

SQL--结构化查询语言(sturctured query language),是一种数据查询和编程语言,最主要的特点无外乎:增、删、改、查。

我们从数据库结构出发:

                          

结构特点:一个RDBMS管理一个或者多个数据库,每个数据库包含一个或者多个表的集合,每个表包含多个表,每个表包含多个记录,每个记录是字段的一个集合。

任何语言的学习都是从数据开始,SQL也不例外,不同的数据类型决定它在内存中占用空间的大小,这样不仅可以保证用户对数据的需求,同时可以提高程序的运行速度。数据类型大体可以分为数值型,字符型,日期和时间型。

然后我们了解数据库建立的基本操作:创建--更改--删除。

(1)创建表

CREATE TABLE name_of_table                           /name_of_table表的名字

(

name_of_column  column_datatype            /name_of_column列的名字,后面一个是列中数据类型

)

(2)更改表

ALTER TABLE name_of_table

ADD name_of_field data_type

(3)删除表

DROP TABLE name of table

数据库设计要经历的必要步骤:

(1)充分考虑所要研究的数据需求

(2)根据具体情况划分数据类型

(3)添加主键(用于标识数据库中的结构,它由一个或者多个表组成)

下面再用一张图来对sql入门经典这本书进行全面的了解:

    

(1)在基础设计当中,体现了数据库中心特点:增删改查 

比较核心的语句有:

一、插入数据:inert into table_name(column_names values(data values)

二、更新数据:update memberdetails

set

添加项,如:street='45 upper road'

where memberid=4    /筛选项:memberdetails表中memberid列为4的所有表项

三、删除数据:delete from memberdetails

四、提取数据:select column1,column2,column3……from table_name

五、排列数据:selec yearreleased

 from films            /从films表中提取出yearreleased列

 order by yearreleased;(加上desc为降序)

标准化中的视图,事务,约束,索引等项均是为查询服务的,有他们的存在数据库查询才能更加高效,快捷!

下面以书中一实例来说明:

电影俱乐部决定向他们成员租借电影,以获得利润。

CREATE TABLE [FORMAT] (                         /创建format表

[FomatId] [int] IDENTITY(1,1) NOT NULL,   /not null约束,保证列项的唯一性

[Fomate] [char](10))


CREATE TABLE[Inventory](                           /创建inventory表

[inventoryid] [int] identity(1,1) not null,

[Fimid] [int] not null,

[formatid] [int] not null,

[fcheckedout] [char] (1))


        INSERT INTO [format]([format])                  /添加格式(数据)到格式表

values('vhs')

Inset into inventory(filmid,formatid,checkedout)

values(1,1‘N')

  select invettory.inventoryid,films.filmnam,fims.plotsummary,format.format   /提取数据

from(inventory

inner join films on inventory.filmid=films.filmid)

inner join format on inventory.formatid=format.formatid                             /用到列的连接 inner join...on...

where (((inventory.checkedout)='N'));

 
update rentals            /更新rentals表,由于前面篇幅原因,省略了rentals表的建立

set rentals.datein='3/23/2004',rentals.change=5

where (((rentals.inventoryid)=7) and ((rentals.memberid)=3))

数据库的入门知识总结道这里,敬请下次的精彩内容!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 30
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 30
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值