
● 数据库
文章平均质量分 68
「已注销」
战斗意志!
展开
-
关系代数基本运算
前言:关系代数名称的由来是因为其中含有操作符和操作数,操作数为表,操作符为交、并等。关系代数有分为基于集合的关系代数和基于包的关系代数;关系代数的基本操作有:并、差、除、选择、投影、笛卡尔积等。1、差 定义:差即Difference,用符号-表示,表示两个表中不一样的部分。此种计算需要使得运算的两个表具有相同的字段。例如S1-S2是在S1中而不在S2中的记录的集合原创 2016-02-16 15:07:14 · 4967 阅读 · 3 评论 -
结构化查询语言
1、什么是SQL?SQL(Structure Query Language)官方为各关系型数据库规定的统一的结构化查询语言,是数据库的核心语言, 具有操作所有关系型数据库管理系统的能力。但是各个品牌的数据库各自具有一些其他数据库不具备的功能或沿袭下来的语法,相当于普通话规定之外的方言。例如MySQL中的LIMIT语句就是MySQL独有的方言,其它数据库都不支持,当然,Oracle或SQL Se原创 2016-01-08 17:44:00 · 5148 阅读 · 0 评论 -
MySQL函数
前言:操作mysql需要使用结构化查询语言,其中为了完成特定功能,也会使用一些常用函数,下面让我们来盘点一下这些函数有哪些分类,常用的有哪些。1、字符串相关函数 ● ASCII(String) 返回字符串第一个字母的ASCII码。 例:SELECT ASCII('A'); SELECT ASCII('AB'); 这两条语句都原创 2016-01-08 16:45:57 · 719 阅读 · 0 评论 -
MySQL的安装、卸载
前言:数据库就是用来存储和管理数据的仓库,可以存储大量基本数据与音频、视频。其发展历程经历了磁盘文件存储、层次结构模型数据库、网状结构模型数据库、关系结构模型数据库、关系-对象模型数据库等阶段。我们现在所说的数据库泛指“关系型数据库管理系统(RDBMS - Relational database management system)”,即“数据库服务器”。MySQL就是关系型数据库,感觉安装、原创 2016-01-08 09:10:14 · 704 阅读 · 0 评论 -
机房重构之--数据库设计说明书
前言:机房重构,需要按照三层架构的理念来设计程序,需要重新设计数据库,而数据库设计说明书则是数据库设计的依据。现摘录部分数据库设计说明书内容如下:1、数据库总表:表名名称描述信息状态基本数据设定T_BasicData基本的消费使用信息使用退卡原创 2015-11-22 12:12:13 · 1362 阅读 · 3 评论 -
网络攻击技术开篇——SQL Injection
本文转自:http://www.cnblogs.com/rush/archive/2011/12/31/2309203.html1.1.1 摘要 日前,国内最大的程序员社区优快云网站的用户数据库被黑客公开发布,600万用户的登录名及密码被公开泄露,随后又有多家网站的用户密码被流传于网络,连日来引发众多网民对自己账号、密码等互联网信息被盗取的普遍担忧。转载 2015-10-10 18:01:12 · 893 阅读 · 6 评论 -
数据词典和约定
数据字典:一个定义应用程序中使用的所有数据元素和结构的含义、类型、数据大小、格式、度量单位、精度以及允许取值范围的共享仓库。数据字典的维护独立于软件需求规格说明,并且在产品的开发和维护的任何阶段,各个风险承担者都可以访问数据字典。它定义了原数据元素、组成结构体的复杂数据元素、重复的数据项、一个约定:定义:是数据库中各种规定,比如说名称约定,表名单词首字母要大写,索引名前加上特殊字母加以标明,如图:原创 2015-08-23 09:25:44 · 1765 阅读 · 13 评论 -
软件工程文档中的数据库模型设计
背景:软件工程文档之《数据库设计说明书》的结构设计部分要明确规划出数据库的概念结构设计、逻辑结构设计、物理结构设计,就是设计数据库的概念模型、逻辑模型、物理模型,那么,何为数据库的概念模型、逻辑模型、物理模型呢?反思:当初学习《数据库系统原理》的时候理解不太透彻,亡羊补牢,为时未晚!概念模型官方解释:概念设计是根据用户的需求设计数据库的概念结构,它以规范的形式,表达了对用户需求所设原创 2015-08-21 11:43:17 · 4411 阅读 · 9 评论 -
Windows身份验证和混合验证的区别
两个验证方式的不同主要集中在信任连接和非信任连接。 windows 身份验证相对于混合模式更加安全,使用本连接模式时候,sql不判断sa密码,而仅根据用户的windows权限来进行身份验证,我们称为“信任连接”,但是在远程连接的时候会因NTML验证(NT系统一种验证方法)的缘故,无法登陆。 混合模式验证就比较既当本地用户访问sql时候采用windows原创 2015-08-12 08:49:07 · 5022 阅读 · 10 评论 -
SQL注入的方法和解决方案
SQL注入的方法和解决方案txtSQL = "select * from user_Info where userID = ' anything '';DROP TABLE user_Info;,我们可以限制可输入文本的输入长度,而且,SQL注入需要输入‘ 和空格等字符,我们可以利用ascii键码值来设置不让输入这些字符,如下:对数据表的删除或窃取用户信息等等非法操作,原理都是一样,比如删除表,只要输入设置数据库时尽量使用参数化的过滤性语句,还要避免使用解释程序,因为这正是黑客们借以执行非法命令的手原创 2015-07-31 09:14:54 · 8350 阅读 · 14 评论 -
已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行,如何解决
操作数据库时经常遇到“已更新或删除的行值要么不能使该行成为唯一行,要么改变了多个行,如何解决,添加主键,使行值成为唯一值,原创 2015-07-26 14:45:16 · 36215 阅读 · 13 评论 -
容易混淆的数据库单引号和双引号
机房收费系统做到了组合查询功能,发现vb连接数据库时代码中出现好多的单引号和双引号,看得人好乱。以前只是单纯的认为双引号是表示字符串,单引号是表示字符,后来仔细的查了资料,知道了单引号是为数据库而存在的。举个小例子,如:txtSQL =" selcet * from student_Info where studentNo= ' " & txtUserId 胡根得 换成 & txtUserName &就是双引号把字符串括起来,又因为在SQL语句中,需要用单引号括起来,简单点说,双引号是给V原创 2015-07-26 11:53:05 · 2712 阅读 · 8 评论 -
mysql 编码问题
1、查看MySQL编码 语法:SHOW VARIABLES LIKE 'char%'; 因为当初安装时指定了字符集为UTF8,所以所有的编码都是UTF8。 ● character_set_client:无论客户端传递的是什么编码的数据,服务器都当成该编码来处理,例如该编码为UTF8,那么如果客户端发送过来的数据不是UTF8,那么就会出现乱码;原创 2016-01-09 09:29:27 · 1341 阅读 · 0 评论 -
mysql 完整性约束
前言:数据完整性约束是一组完整性规则的集合。它定义了数据模型必须遵守的语义约束,也规定了根据数据模型所构建的数据库中数据内部及其数据相互间联系所必须满足的语义约束,约束是添加到列上的,用来约束列。 完整性约束是数据库系统必须遵守的约束,他限定了根据数据模型所构建的数据库的状态以及状态变化,以便维护数据库中数据的正确性、有效性和相容性,如果数据不正确,那么一开始就不能添加到表中。下面来让我们盘原创 2016-01-09 11:26:30 · 985 阅读 · 0 评论 -
概念模型
1、概念模型 当我们要完成一个软件系统时,需要把系统中的实体抽取出来,形成概念模型。概念模型在Java中称为实体类,实体类--是与数据库中的表对应的,一种orm(对象与关系的映射);实体类在Java中的体现形式就是javaBean(所以说javabean是实体类的一种)。 类使用成员变量来完成关系,一般都是双向关联!例如部门、员工都是系统中的实体。概念模型中的实体最终会成为Ja原创 2016-01-09 12:26:29 · 1403 阅读 · 0 评论 -
函数依赖及数据库范式
1、函数依赖 (1)简介 定义:设U{A1,A2,…,An}是属性集合,R(U)是U上的一个关系,x、y是U的子集。若对于R(U)下的任何一个可能的关系, 均有x的一个值对应于y的唯一具体值,称y函数依赖于x,记作x→y。 其中x称为决定因素。进而若再有y→x,则称x与y相互依赖,记作x←→y。 函数依赖是从数学角度来定义的,在关系中用来刻画关系各原创 2016-02-16 12:21:41 · 3113 阅读 · 2 评论 -
超键、主键、候选键
1、定义 超键:在关系模式中,能够唯一标识元组的属性集称为超键(super key)。 候选键:在关系模式中,能唯一标识元组并且不包含多余属性的属性集称为候选键。值得注意的是,超键与候选键是有区别的,超键可能含有多余的属性,而候选键不能。 主键:在一个关系的若干个候选键中随意的指定一个作为唯一标识元组的关键字,则此关键字称为主键。三者之间的关系:原创 2016-02-16 10:47:01 · 2219 阅读 · 2 评论 -
DBUtils
1、DBUtils概述 DBUtils是Apache Commons组件中的一员,DBUtils的Jar包是dbutils.jar,开源免费,DBUtils是对JDBC的简单封装,可以把结果集转化成我们想要得到的形式,当前应用很广泛。2、DBUtils主要类 ● DbUtils:DbUtils是一个为做一些诸如关闭连接、装载JDBC驱动程序之类的常规工作提供原创 2016-01-13 10:38:35 · 1936 阅读 · 3 评论 -
数据库连接池
1、数据库连接池的概念 在一个复杂的数据库应用中,会对数据库进行大量访问,频繁的建立、关闭连接,会极大的减低系统的性能,因此对于连接的使用成了系统性能的瓶颈。 数据库连接池就是来解决这一问题的,其基本原理是创建连接池并在池中维护一定数量的数据库连接,对外暴露数据库连接获取和返回方法。用池来管理Connection,这可以重复使用Connection。我们也不需要自己创建Conn原创 2016-01-13 08:55:38 · 982 阅读 · 2 评论 -
数据库锁的基本原理
前言:为了保证数据的完整性和一致性,数据库系统采用锁来实现事务的隔离性。各种大型数据库采用的锁基本理论是一致的,但在具体实现上各有差别。从并发事务锁定的关系上看,可以分为共享锁定和独占锁定。从锁定的对象不同,一般可以分为表锁定和行锁定。1、锁的分类 锁分为悲观锁和乐观锁: ● 悲观锁:悲观的思想,认为并发问题总会出现,每次一个事务读取某一条记录后,就会把这条记录原创 2016-01-12 16:41:06 · 1481 阅读 · 2 评论 -
事务的隔离级别
1、事务的并发问题(1)丢失更新:一个事务的更新被另一个事务的更新覆盖了,例如:(2)脏读:读取到另一个事务未提交数据;(3)不可重复读:时间转账事务A取款事务BT1 开始事务T2开始事务 T3原创 2016-01-12 16:27:42 · 755 阅读 · 3 评论 -
事务
1、事务概述 事务(Transaction)是并发控制的基本单位。它是一个操作序列,这些操作要么都执行,要么都不执行,是一个不可分割的工作单位。事务具有四大特性,简称为ACID: ● 原子性(Atomicity):事务中所有操作是不可再分割的原子单位。事务中所有操作要么全部执行成功,要么全部执行失败。 ● 一致性(Consistency):事务执行后,数据库状态与其它业务原创 2016-01-12 15:36:45 · 778 阅读 · 5 评论 -
PreparedStatement与SQL批处理
1、服务器如何执行SQL语句? 当服务器接收到一条SQL语句后,服务器先要校验这条SQL语句的语法格式是否正确,然后把SQL语句编译成可执行的函数,最后执行这个函数就是执行了SQL语句。其中校验语法,和编译所花的时间比执行SQL语句花的时间还要多很多。比如我们要执行多次insert语句,如果按照平常方法,会每插入一条记录就写一条SQL语句,所以MySQL服务器需要每次都去校验每一条S原创 2016-01-11 16:34:50 · 1818 阅读 · 0 评论 -
JDBC
1、什么是JDBC? JDBC(Java DataBase Connectivity),Java数据库连接,是用Java语言对数据库进行操作的技术。这样我们就不必非要去控制台或相关软件用SQL语句来操作数据库了,只要使用Java代码就能向数据库发送SQL语句了。2、JDBC原理原创 2016-01-11 10:12:10 · 954 阅读 · 0 评论 -
JDBC对象
1、JDBC中的主要类(接口) 在JDBC中常用的类有四种,分别是:DriverManager;Connection;Statement;ResultSet。2、DriverManager DriverManager最主要的方法是getConnection(),它的实现总共分两步: (1)注册驱动Class.forName(“com原创 2016-01-11 12:13:29 · 755 阅读 · 0 评论 -
mysql DQL exercise
前言:本文不以讲解为目的,专用做数据库操作练习。************************************************************************************************************************************1、查询每种工作的最高工资、最低工资、人数/*列:部门、最高原创 2016-01-09 17:53:24 · 884 阅读 · 0 评论 -
数据流图
1、数据流图简介 数据流图(数据流程图 Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,用于回答软件系统“做什么”的问题,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。2、数据流图基本符号原创 2016-02-19 10:25:24 · 2272 阅读 · 6 评论