数据库学习 day1 认识数据库
从SQL的角度而言,数据库是一个以某种有组织的方式储存的数据集合。
我们可以把它比作一个“文件柜”,这个“文件柜”是一个存放数据的物理位置,不管数据是什么,也不管数据是如何组织的。
下面介绍几个术语
数据库(database)
保存有组织的数据容器
注意:数据库和实际使用的软件无关,数据库软件应称为数据库管理系统(DBMS)。
表(table)
某种特定类型数据的结构清单。
储存在表中的数据硬是同一种类型的数据或清单。绝不应该将用户的清单和订单的清单放在一个表中,否则会造成检索和访问变得很困难,
正确的做法是创建两个表,各存一个清单。
注意:表名在同一个数据库中不能重复
模式(schema)
关于数据库与表的布局以及特性的信息。这些信息包括定义数据在表中如何储存,包含储存什么样的数据,数据如何分解,各部分信息如何命名等。
列(cloumn)
表由一个列或多个列组成。用于存储表中某部分的信息。
例如在客户表中,一列存储顾客的编号,另一列存储顾客的姓名,而地址、城市、省等信息都存在各自的列中。
分解数据
正确的将数据分解为各个列很重要,通过分解这些数据,才有可能利用特定的列对数据进行分类和过滤(如找出特定省或特定城市的顾客)。
数据库中的每一列都有相应的数据类型(datatype),它定义了列中可存储的数据种类。选择合适的数据类型,可以正确的分类各种数据,
并在优化磁盘方面起到了重要的作用。因此,在创建表时需要多加注意所用的数据类型。
注意:数据类型及其名称是SQL不兼容的一个主要原因。许多高级的数据类型没有,更糟的是偶然会有相同的数据类型在不同的DBMS中具
有不同的名称,对此用户毫无办法,要做的是在创建表结构时就应该注意这些差异。
行(row)
表中的一个记录(record),通常记录和行是可以交替使用的,但在术语中我们还是称之为行。
主键(primary key)
每一行都应该有一列(或几列)可以唯一的标识自己。例如,顾客表有顾客编号,学生有学号,公民有唯一的身份ID。
表中的任何列都可以作为主键,只要满足以下条件
- 任意两行都不具有相同的主键值
- 每一行都必须拥有一个组件值(主键值不允许NULL值)
- 主键列中的值允许修改和更新;
- 主键值不能重用(如果某行被删除,他的主键值不能赋值给其他新行)
还有一种外键,将在之后的课程中介绍
SQL(structured query language)
SQL是一种专门用来与数据沟通的语言。
与其他语言(如JAVA,C++,PHP等)不同,SQL只有很少的语句,而且这些词具有很强的描述性。几乎所有重要的DBMS都
支持SQL语言,因此学会它你几乎可以和所有的数据库打交道。
SQL虽然看上去很简单,但实际上是一种强力的语言,灵活使用,可以进行复杂和高级的数据库操作。
数据库学习 day1 认识数据库的更多相关文章
- Mysql数据库学习笔记之数据库索引(index)
什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...
- 数据库学习之mysql数据库
参考链接网站: http://c.biancheng.net/view/2361.html Mysql的版本以及版本号 MySQL Community Server(社区版):该版本完全免费,但是官方 ...
- oracle 数据库学习3 --oracle 数据库中常使用的函数
1.字符函数: ASCII(X) -->返回X字符的ASCII码 concat(x,y)-->将y连接到X上输出 select concat(first_name,last_name) f ...
- MySQL数据库学习: 01 —— 数据库的概述
壹 概述 一 了解SQL 1.1 数据库基础 1.1.1 什么是数据库 数据库(database)保存有组织的数据的容器(通常是一个文件或一组文件). 易混淆:人们常常用“数据库”这个词语来代表他们使 ...
- MYSQL数据库学习笔记1
MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...
- SQL数据库学习,常用语句查询大全
数据库学习 sql server数据库基本概念 使用文件保存数据存在几个缺点: 1.文件的安全性问题: 2.文件不利于查询和对数据的管理: 3.文件不利于存放海量数据 4.文件在程序中控制不方便. 数 ...
- 关于SQL SERVER数据库学习总结
对于SQL SERFVER数据库也学了有一阵子了,自己也对自己所学做了一些总结. 我们首先学习数据库设计的一些知识点和用SQL语句建库. 设计数据库步骤:需求分析阶段,概要设计阶段,详细设计阶段, 建 ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- (转)浅析epoll – epoll函数深入讲解
原文地址:http://www.cppfans.org/1418.html 浅析epoll – epoll函数深入讲解 前一篇大致讲了一下epoll是个什么东西,优点等内容,这篇延续上一篇的内容,主要 ...
- textareaCenter 未完结 其实就是iview的textarea的从写一遍 需求是光标上下居中
重点1: 一但赋值内容,光标会失去,导致光标到第一位 解决方法 设置一个状态位isChange,编辑的时候不进行watch更新,因为emit会自动改变外层的值,触发watch 解决方法2 找回上一次的 ...
- php 数据库 操作
header.php <?php error_reporting(0);//加上error_reporting(0);就不会弹出警告了 // header("Content-type: ...
- VS配置C++依赖包
处理好三个东西 1.头文件,Configuration Properties → VC++ Directories → Include Directories 2.静态库,Configuration ...
- java-Properties集合。
查看手册: 关键字: store() 储存. setProperty("",""); 添加. FileWriter("D:\\ja.propertie ...
- [Alg] 文本匹配-单模匹配与多模匹配
实际场景: 网站的用户发了一些帖子S1, S2,...,网站就要审核一下这些帖子里有没有敏感词. 1. 如果网站想查一下帖子里有没有一个敏感词P,这个文本匹配要怎么做更快? 2. 如果网站想查一下帖子 ...
- atomic的底层实现
atomic操作 在编程过程中我们经常会使用到原子操作,这种操作即不想互斥锁那样耗时,又可以保证对变量操作的原子性,常见的原子操作有fetch_add.load.increment等. 而对于atom ...
- linux入门系列19--数据库管理系统(DBMS)之MariaDB
前面讲完Linux下一系列服务的配置和使用之后,本文简单介绍一款数据库管理系统(MySQL的兄弟)MariaDB. 如果你有MySQL或其他数据的使用经验,MariaDB使用起来将非常轻松. 本文讲解 ...
- [剑指offer]62.圆圈中最后剩下的数字
62.圆圈中最后剩下的数字 题目 0,1,...,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字.求出这个圆圈里剩下的最后一个数字. 例如,0.1.2.3.4这5个数字组成 ...
- python爬虫常用库和安装 -- windows7环境
1:urllib python自带 2:re python自带 3:requests pip install requests 4:selenium 需要依赖chrome ...