当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 谈数据库中模糊数据的输入与判别

MSSQL
系统存储过程sp_MSforeachtable和sp_MSforeachdb使用说明
一些文件未注册导致mssql表文件无法找开的解决方法
用sql获取某字符串中的数字部分的语句
SQL 判断字段类型语句
MSSQL 生成日期列表代码
MSSQL 计算两个日期相差的工作天数的语句
SqlServer 实用操作小技巧集合
sql中all,any,some用法
最常用的SQL语句
SQL语法 分隔符理解小结
sql 服务器知识
隐藏在SQLServer 字段中的超诡异字符解决过程
将备份数据还原到数据库的步骤
SQL Server 高速缓存依赖分析
SQL 多表连接查询实现语句
sql convert函数使用小结
sqlserver2005 行列转换实现方法
跨服务器查询导入数据的sql语句
返回SQL执行时间的存储过程
MSSQL ISQL命令详解

MSSQL 中的 谈数据库中模糊数据的输入与判别


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 36 ::
收藏到网摘: n/a

  前言

模糊数据库,是指能够处理模糊数据的数据库。一般的数据库都是以二直逻辑和精确的数据工具为基础的,不能表示许多模糊不清的事情。随着模糊数学理论体系的建立,人们可以用数量来描述模糊事件并能进行模糊运算。这样就可以把不完全性、不确定性、模糊性引入数据库系统中,从而形成模糊数据库。模糊数据库研究主要有两方面,首先是如何在数据库中存放模糊数据;其次是定义各种运算建立模糊数据上的函数。模糊数的表示主要有模糊区间数、模糊中心数、模糊集合数和隶属函数等。
自从1965年美国加州大学伯克利分校的LoftiZadeh提出了模糊逻辑以来,人类在这一领域内的研究一直没有终止过;在数据库领域内,模糊逻辑理论也得到了一定的应用,本文就模糊数据的输入与判别谈一下自己的认识,意在抛砖引玉。

一、模糊逻辑基本原理  
U 为某些对象的集合,称为论域,可以是连续的或离散的;u 表示U 的元素,记作U ={u}。
定义1 模糊集合(fuzzy sets) 论域U 到[0,1]区间的任一映射mF ,即mF :U ®[0,1],都确定U 的一个模糊子集F ;mF称为F的隶属函数(membership function)或隶属度(grade of membership)。也就是说,mF 表示u属于模糊子集F的程度或等级。在论域U中,可把模糊子集表示为元素u与其隶属函数mF(u)的序偶集合,记为:
F ={(u,mF(u)|uÎU)}  
若U 为连续,则模糊集F 可记作:
F =òUmF(u)/u  
若U 为离散,则模糊集F 可记为:
F=mF(u1)/u1+mF(u2)/u2+….+mF(un)/un= åmF(ui)/ui  
定义2 模糊支集、交叉点及模糊单点 如果模糊集是论域U 中所有满足mF(u)>0的元素u 构成的集合,则称该集合为模糊集F的支集。当u 满足mF =10,则称此模糊集为模糊单点。  
定义3 语言变量 一个语言变量可定义为多元组(x,T(x),U,G,M)。其中,x为变量名;T(x)为x的词集,即语言值名称的集合;U 为论域;G 是产生语言值名称的语法规则;M 是与各语言值含义有关的语法规则。语言变量的每个语言值对应一个定义在论域U 中的模糊数。语言变量基本词集把模糊概念与精确值联系起来,实现对定性概念的定量化以及定量数据的定性模糊化。 例如,某浴室锅炉把水的温度作为一个语言变量,其词集T(温度)可为:
T(温度)={超高,很高,较高,适中,较低,很低,过低}

二、 数据库中存放模糊数据的方法

1、 数据模型的选择
近年应用较多的数据库模型主要有关系数据模型、面向对象模型、对象-关系数据模型。
模糊数据库要求存储的数据具有抽象度高、数据类型复杂、面向对象操作的特点,特别针对模糊识别功能的实现还必须具即时的隶属函数。
关系数据模型具有结构统一、面向记录、有限数据类型、不能清晰表示和有效处理复杂对象的缺点,难以满足模糊数据库的需求。
面向对象数据库管理系统(OODBMS)是从对象观点出发,移向数据库管理思维,以面向对象的程序设计语言为基础的持久化的程序设计语言,目前实行的是ODMG-93标准,适合于具有复杂数据要求的工程、图形、多媒体等领域,是目前比较先进的一种数据模型理念。但是它在查询、事物管理和并发方面较差,而且用户端的参与不好,同时由于其属于新生事物,尚不成熟,因此各大数据库厂家对其的支持较差,可谓“曲高和寡”。因此也不是最好的选择。
对象-关系数据库管理系统(ORDBMS)是从关系数据库观点出发,移向对象思维,以关系数据库和SQL为基础的扩展关系模型,具扩展复杂数据类型和允许用户自定义函数(SQL或C语言)功能。具面向对象特性,受通用性强的SQL3(SQL99)标准支持。ORDBMS既满足了传统关系型数据库用户的要求,同时又具有复杂数据需要的应用,具强大查询语言功能,同时也有很多大的数据库厂商支持。是建立模糊数据库的最佳选择。

2、 数据模型的建立
首先建立非1NF文档关系:
[sayyes]http://www.computerworld.com.cn/htm/app/service/01_7_13_3.gif[/sayyes]
以例某浴室锅炉把水的温度作为一个语言变量,其词集T(温度)可为:
T(温度)={超高,很高,较高,适中,较低,很低,过低}
----------------------------------------------------------------------------
SQL99语句:
Create type mynum1 integer varying.
Create type mynum2 numeric varying.
/*建立复杂类型*/
create table temperature
(fuzzytemp char(4),
x mynum1 [10],
mn mynum2 [10],
/*使用数组,以确定各数的位置*/
check (fuzzytemp in (‘超高’,’很高’,’较高’,’适中’,’较低’,’很低’,’过低’))
create table measure
(time time,
temp smallint;
check (temp<=100))

三、模糊数据的判决

通过模糊推理得到的结果是一个模糊集合或者隶属函数,但在实际使用中,特别是在模糊逻辑控制中,必须用一个确定的值才能去控制伺服机构。在推理得到的模