sql数据库学习
一、认识数据库
1、数据库的基本概念
2、数据库常用对象
3、数据库的组成
数据库主要由文件和文件组组成。数据库中所有的数据和对象都被存储在文件中。
二、创建数据库
1、创建数据库
对象资源管理器—数据库——右击——新建数据库
三、操作数据表与视图
1、创建数据表
空值:表示数据未知。非空值:数据列不允许空值。
(1)选择一个数据库——展开 表——新建表
填入属性
(2)设置主键
选择KH_ID右击,设置为主键。主键:建立一列或多列的组合以唯一标识表中的每一行,主键可以保证实体的完整性,一个表只能有一个主键。
(3)保存新建的表,并给起一个名字。
(4)修改数据表。选择要修改的数据表,右击——设计。
(5)创建检查约束,检查约束可以把输入的数据限制在指定范围。
设计——选择一列——右击 check约束
(6)创建外键:外键是建立两个表数据之间连接的一列或多列。通过将保存表中主键值的一列或多列添加到另一个表中,可以创建两个表之间的连接。这个列为第二个表的外键。
2、关系
一对一
多对多
3、视图
将查询的结果以虚拟表的形式存储在数据表中,视图并不在数据库中以存储数据集的形式存在,视图的结构和内容建立在对表的查询基础之上的,视图的行列数据源于查询所应用的表。
(1)创建视图
选择指定的数据库——视图——新建视图——添加表——保存
(2)查看视图的内容(记录)
选择要查看的视图——编辑前200行
(3)视图中删除数据记录
设计——删除
三、T-sql
3.1分类
3.2语句分类
3.3 常用的数据操作语句
3.3.1 select 查询语句
select 语句是一个查询表达式,包括select、from、where、group by 和 order by 子句。具有数据查询、统计、分组和排序的功能。
select 和from为必选子句,其他为可选语句。
1、where 用法
(1)比较运算:
(2)逻辑运算:
(3)范围运算:
(4)列表运算
(5)字符匹配运算
2、ORDER BY 子句
对查询的结果升序或降序排列
3、GROUP BY子句
对查询结果按照一列信息归类
4、SELECT操作多表数据
多表查询把多个表的数据组合,再从中获取所需要的数据信息。
(1)简单基本连接
(2)内连接
内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。
如:
(3)外连接
外连不但返回符合连接和查询条件的数据行,还返回不符合条件的一些行。外连接分三类:左外连接(LEFT OUTER JOIN)、右外连接(RIGHT OUTER JOIN)和全外连接(FULL OUTER JOIN)。
左外链接:
右外连接:
完全连接:返回两个表中所有匹配行和不匹配行
3.3.2 insert 插入语句
3.3.3 update语句修改指定的数据
3.3.4 delete 语句删除指定数据
3.4 视图操作
(1)插入数据
(2)修改数据
(3)删除数据
4、基本表和视图的区别:
(1)数据库中的数据都是存储在表中的,而视图只是一个或多个表依照某个条件组合而成的结果集,一般来说你可以用update,insert,delete等sql语句修改表中的数据,而对视图只能进行select操作。但是也存在可更新的视图,对于这类视图的update,insert和delete等操作最终会作用于与其相关的表中数据。因此,表是数据库中数据存储的基础,而视图只是为了满足某种查询要求而建立的一个对象。
(2)表是物理存在的,你可以理解成计算机中的文件! 视图是虚拟的内存表,你可以理解成windows的快捷方式!
相关阅读
//查询所有表明 select name from sysobjects where xtype='u' select * from sys.tables //查询数据库中所有的表名及行数
pl/sql developer登录oracle初始化失败问题
使用pl/sql developer客户端访问64位的oracle数据库时,不能直接访问,需要中间件32位的oracle客户端。在pl/sql需要配置加载文
mysql中tinyint(1)与tinyint(2)的区别
tinyint 型的字段如果设置为UNSIGNED类型,只能存储从0到255的整数,不能用来储存负数。tinyint 型的字段如果不设置UNSIGNED类型,存
昨天晚上打开java项目准备联系几个功能,linux里面启动成功,tomcat也运行了,正在享受这个过程的时候,结果mysql显示cant connect l
adb server is out of date. killing完美解决
今天,久未出现的著名的“adb server is out of date. killing”又发生了,在此,将解决方法记下,以便日后查看。 1. 错误信息: C:\Use