《数据库原理》知识点之面向对象数据库

《数据库原理》知识点之面向对象数据库,第1张

考核要求:达到“识记”

层次知识点:基本概念

831 面向对象数据模型的基本概念

(1)对象:客观世界中的实体经过抽象称为问题空间中的对象,它是对一组信息及其 *** 作的描述。

对象由三部分组成:一组变量;一组消息;一组方法

(2)类:是具有相同的变量名和类型、相同的消息和使用相同的方法的对象的集合。

类中的每个对象称为类的实例

(3)继承性:允许不同类的对象共享他们公共部分的结构和特性。

单重继承性:一个子类继承某一个超类的结构和特性,称为单重继承性。

多重继承性:一个子类继承多个超类的结构和特性,称为多重继承性。

(4)对象标识:与对象的物理存储位置无关,也与数据的描述方式和值无关的一个标识。

在对象创建的瞬间,由系统赋给每个对象一个“标识”,即系统内的一个的指针,在对象生存期内,这个标识不可改变。

在面向对象语言中,对象标识是一个指针一级的概念

(5)对象包含:不同类的对象之间存在的包含关系称为对象包含,包含其他对象的对象称为复合对象。

Notice:继承是" is a "联系,包含是"is part of"联系。比如卡车是车的子类(继承),车包含轮胎(包含)

832 持久化程序设计语言

OOPL:面向对象语言对现有的OOPL进行扩充,使之能处理数据库,这样的OOPL称为持久性程序设计语言。

持久化语言与嵌入式SQL语言的不同:

(1)格式转换对程序员透明;

(2)程序员可直接 *** 纵持久数据。

(具体内容可参见教材P211)

一些基本概念:

持久数据:是指创建这些数据的程序运行终止后数据依然存在于系统之中。

持久指针:持久化指针不像内存中的指针,它在程序执行后及数据重组后仍保持有效。 在概念上,持久指针可以看作是数据库中指向对象的指针。

查找数据库对象的三种方法:

(1)根据对象名找对象;

(2)根据对象标识找对象;

(3)将对象按聚集形式存放,然后利用程序循环找所需对象。

833 持久化C++系统

C++中可以说明一个称为Persistent_Object(持久对象)的类及其属性和方法来支持持久性, 而其他的类作为该类的子类继承其持久性。

ODMG(Object DataBase Management Group)对C++的扩充有两个方面:

C++对象定义语言(ODL)

C++对象 *** 纵语言(OML)

总结:

在OO技术与DB技术相结合过程中,采取了两条不同的途径:

一条途径是在传统的关系模型基础上,提供复合数据类型,扩充SQL语言使之能处理新的数据结构。这种模型称为对象关系模型,还不能说是严格意义上的面向对象数据模型。但是用户容易接受,易于推广。

另一条途径是在OOPL C++基础上进行扩充,能 *** 作持久数据,处理数据库,形成持久化C++系统,即OODBS但较难提供对说明性查询的支持,因此推广使用难度较大。

看官网文档,如下图描述还是比较清晰的:

基本概念

1、数据库(Database)

数据库是存储在一起的相关数据的集合,这些数据可以被访问,管理以及更新。

数据库用于管理各类数据对象,与其他数据库隔离。创建数据对象时可以指定对应的表空间,如果不指定相应的表空间,相关的对象会默认保存在PG_DEFAULT空间中。数据库管理的对象可分布在多个表空间上。

2、数据块(Block)

数据块是数据库管理的基本单位,默认大小为8KB。

3、行(ROW)

一行(元组,或记录)是一组相关的数据,例如一条用户订阅的数据。

4、列(Cloumn)

每一列被当作是一个字段。每个字段中的值代表一种类型的数据。例如,一个表可能有3个字段:姓名、城市和国家。这个表就会有3列,一列代表姓名,一列代表城市,一列代表国家。表中的每一行包含3个字段的内容,姓名字段包含姓名,城市字段包含城市,国家字段包含国家。

5、表(Table)

表是由行与列组合成的,是数据库中用来存储数据的对象,是整个数据库系统的基础。

每张表只能属于一个数据库,也只能对应到一个表空间。每张表对应的数据文件必须在同一个表空间中。

6、数据文件(Datafile Segment)

通常每张表只对应一个数据文件。如果某张表的数据大于1GB,则会分为多个数据文件存储。

7、表空间(Tablespace)

在openGauss中,表空间是一个目录,在物理数据和逻辑数据间提供了抽象的一层,为所有的数据库对象分配存储空间,里面存储的是它所包含的数据库的各种物理文件。由于表空间是一个目录,仅是起到了物理隔离的作用,其管理功能依赖于文件系统。

表空间可以存在多个,创建好之后,创建数据库对象时可以指定该对象所属的表空间。

8、模式(schema)

数据库对象集,包括逻辑结构,例如表、视图、序、存储过程、同义名、索引及数据库链接。

9、事务(Transaction)

数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库 *** 作序列构成。在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序。

同时,事务也是恢复和并发控制的基本单位,必须具备ACID特性,即:

原子性(Atomicity):一个事务是一个不可分割的工作单位,事务中包括的 *** 作要么都做,要么都不做。

一致性(Consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

隔离性(Isolation):一个事务的执行不能被其他事务干扰。即一个事务内部的 *** 作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。

持久性(Durability):持久性也称永久性(Permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他 *** 作或故障不应该对其有任何影响。

问题一:创建数据库的两种方法 交互式创建,就是你右击数据库然后选择新建数据库按钮就可以还有一种就是sql语句创建比如创建一个数据库名为a 的数据库,那么sql语句就是,create database a;然后执行下就可以

问题二:如何用MySQL建立数据库 这很简单啊!

在Windows下,假如你的MySQL装在 D:\MySQL

就可以这样:

先切换到它的bin目录

cd D:\MySQL\bin\

抚:\MySQL\bin>mysql -u root -p

接着输入你的root密码

接下来你就可以创建数据库、创建用户、创建修改表之类的 *** 作(常用命令如下)。

查看现有数据库

mysql> show databases;

创建数据库(假如数据库名为 mydb)

mysql> create database mydb;

删除数据库(假如数据库名为 mydb)

mysql> drop database accounts;

使用数据库(假如使用数据库 mydb)

mysql> use mydb;

执行完使用数据库命令后,就可以对该数据库进行创建、修改、插入、删除表等 *** 作,这些表的 *** 作命令你可以到网上找找,不是很难的。一个数据库就相当于一个 Excel 文件,而表则相当于Excel文件的单元格,数据就是存放在表中。

问题三:怎样建立一个简单数据库? 把excel导入数据库,不出现表格嵌套可以使用下面这个方法导入;

思路:

(1)、把excel数据读入到dataset中;

(2)、建立相应结构的数据表格

(3)、把dat畅set中的数据更新到数据表中

问题四:如何用数据库向导创建数据库 Microsoft Access 提供了三种方法来创建 Access 数据库 (Microsoft Access 数据库:数据和对象(如表、查询或窗体)组成的 ,与特定的主题或用途有关。)。

可以使用“数据库向导”来创建数据库。通过该向导可以从内置模板中进行选择,然后对其进行一定程度的自定义。随后,该向导会为数据库创建一组表、查询、窗体和报表,同时还会创建切换面板。表中不含任何数据。如果内置模板中的某个模板非常符合您的要求,请使用该方法。

使用“数据库向导”创建数据库

利用“数据库向导”,用一步 *** 作即可为所选数据库类型创建必需的表、窗体和报表。这是创建数据库的最简单方法。该向导提供了有限的选项来自定义数据库。

单击工具栏上的“新建”。

在“新建文件”任务窗格中,在“模板”下,单击“本机上的模板”。

在“数据库”选项卡上,单击要创建的数据库类型的图标,然后单击“确定”。

在“文件新建数据库”对话框中,指定数据库的名称和位置,然后单击“创建”。

按照“数据库向导”的指导进行 *** 作。

如果向导未启动

这可能是因为 Access 正运行于沙盒模式,但您的计算机上尚未安装 Microsoft Jet 40 SP8 或更高版本。启用沙盒模式后,必须安装有 Jet 40 SP8 或更高版本,Access 才能完全发挥作用。

有关安装 Jet 升级的详细信息,请参阅 Office Online 文章关于 Microsoft Jet 40 SP8 或更高版本。

有关沙盒模式的详细信息,请参阅 Office Online 文章关于 Microsoft Jet Expression Service 沙盒模式。

注释 不能使用“数据库向导”向已有的数据库中添加新的表、窗体或报表。

如果正在使用 Access 2003,可以在 中搜索 Access 模板。下载模板是创建数据库的最快方式。如果您找到了非常符合要求的模板,请使用该方法。模板是一个包含表、查询、窗体和报表的 Access 数据库文件 (mdb)。表中不含任何数据。打开数据库后,可以自定义数据库和对象。

使用模板创建数据库

这是创建数据库的最快方式。如果能找到并使用与您的要求非常接近的模板,则此方法效果最佳。

在工具栏上单击“新建”。

在“新建文件”任务窗格中,在“模板”下,搜索特定的模板,或单击“Office Online 模板”找到合适的模板。

找到需要的 Access 模板,然后单击“下载”。

如果要基于自己的设计创建数据库,请先创建一个空数据库,然后再分别添加表、窗体、报表及其他对象。这是最灵活的方法,但需要分别定义每一个数据库元素。

不使用“数据库向导”创建空数据库

单击工具栏上的“新建”。

在“新建文件”任务窗格中的“新建”下,单击“空数据库”。

在“文件新建数据库”对话框中,指定数据库的名称和位置,然后单击“创建”。

然后将出现“数据库”窗口 (数据库窗口:在打开 Access 数据库或 Access 项目时出现的窗口。它显示用于新建数据库对象和打开现有对象的快捷方式。),现在便可以在数据库中创建所需的对象 (数据库对象:Access 数据库包含诸如表、查询、窗体、报表、页、宏和模块等对象;Access 项目包含诸如窗体、报表、页、宏和模块等对象。)。>>

问题五:怎样在mysql中创建数据库 是这句:创建一个数据库MYSQLDATA

mysql> CREATE DATABASE MYSQLDATA;

基本 *** 作:MySQL中新建用户,新建数据库,用户授权,删除用户,修改密码的相关 *** 作测试环境:WIN32 mysql5045注:本 *** 作是在WIN命令提示符下,phpMyAdmin同样适用。

用户:phplamp 用户数据库:phplampDB1新建用户。登录MYSQL

@>mysql -u root -p

@>密码

创建用户

mysql> insert into mysqluser(Host,User,Password) values(localhost,phplamp,password(1234));

刷新系统权限表

mysql>flush privileges;

这样就创建了一个名为:phplamp 密码为:1234 的用户。然后登录一下。mysql>exit;

@>mysql -u phplamp -p

@>输入密码

mysql>登录成功2为用户授权。登录MYSQL(有ROOT权限)。我里我以ROOT身份登录

@>mysql -u root -p

@>密码

首先为用户创建一个数据库(phplampDB)

mysql>create database phplampDB;

授权phplamp用户拥有phplamp数据库的所有权限。

>grant all privileges on phplampDB to identified by '1234';

刷新系统权限表

mysql>flush privileges;

mysql>其它 *** 作/

如果想指定部分权限给一用户,可以这样来写:

mysql>grant select,update on phplampDB to identified by '1234';

刷新系统权限表。

mysql>flush privileges;

/3删除用户。@>mysql -u root -p

@>密码

mysql>DELETE FROM user WHERE User=phplamp and Host=localhost;

mysql>flush privileges;

删除用户的数据库

mysql>drop database phplampDB;4修改指定用户密码。@>mysql -u root -p

@>密码

mysql>update mysqluser set password=password('新密码') where User=phplamp and Host=localhost;

mysql>flush privileges;5列出所有数据库mysql>show database;6切换数据库mysql>use '数据库名';7列出所有表mysql>show t>>

问题六:怎么创建数据库连接 方法一、通过编写代码来连接数据库

1定义连接字符串。Data Source=服务器;Initial Catalog=数据库名;User ID=用户名;Pwd=密码 如:Data Source=IDEA-PC\SQLEXPRESS;Initial Catalog=student;User ID=sa;

2创建Connection对象。 SqlConnection sqlconnection1=new SqlConnection(constring);

constring为连接字符串。

3打开与数据库的链接。 Sqlconnection1Open();

4这时数据库就连接成功,可以 *** 作数据库了。

方法二、通过拖拽形式建立数据库连接

1打开视图-->服务器资源管理器。

2右键点就数据连接,选择添加连接。

3选择服务器名(先刷新一下)-->登陆到服务器身份验证形式-->选择一个数据库名-->测试链接-->确定(如果测试链接成功的话)。

4这是建立数据库连接就成功了,可以使用了。

问题七:sqlserver 下怎么建立数据库 怎么建表 方法/步骤

1

首先我们打开SQL SERVER自带的数据库管理工具,从开始菜单中可以找到,如图点击进去;

2

开始连接SQL SERVER服务器,就是我们装好的SQL SERVER 服务器;

3

右击数据库,选择第一个,新建一个数据库;

4

填写数据库的名称,下面是设置自动增长的,一般不用管,默认

5

点击确定后就可以生成一个数据库,此时里面是没有表的;

6

右击表新建一个表,填写你要的字段名称

7

填完字段名称后点击字段名称那个内部窗口的小叉叉,然后就提示你输入表名了,填写下表名,一个数据库的建立过程就是这样的;

或者

create database stuDB

on primary -- 默认就属于primary文件组,可省略

(

/--数据文件的具体描述--/

name='stuDB_data', -- 主数据文件的逻辑名称

filename='D:\stuDB_datamdf', -- 主数据文件的物理名称

size=5mb, --主数据文件的初始大小

maxsize=100mb, -- 主数据文件增长的最大值

filegrowth=15%--主数据文件的增长率

)

log on

(

/--日志文件的具体描述,各参数含义同上--/

name='stuDB_log',

filename='D:\stuDB_logldf',

size=2mb,

filegrowth=1mb

)

问题八:oracle数据库怎么创建新用户? 在CRT中进入oracle --连接sqlplus

按照下面写完代码直接复制进去回车就行了

---建立用户代码为:CREATE USER 用户名字 PROFILE DEFAULT IDENTIFIED BY 密码 DEFAULT TABLESPACE 指定表空间名字 TEMPORARY TABLESPACE 临时表空间 ACCOUNT UNLOCK;

---赋权

begin

EXECUTE IMMEDIATE 'GRA�T SELECT ANY DICTIONARY TO 用户名';

EXECUTE IMMEDIATE 'GRANT ALTER ANY TABLE TO 用户名';

EXECUTE IMMEDIATE 'GRANT ALTER SYSTEM TO 用户名';

EXECUTE IMMEDIATE 'GRANT ALTER ANY PROCEDURE TO 用户名';

EXECUTE IMMEDIATE 'GRANT CONNECT TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE ANY PROCEDURE TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE ANY TABLE TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE ANY INDEX TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE DATABASE LINK TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE PUBLIC DATABASE LINK TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE ANY VIEW TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE PUBLIC SYNONYM TO 用户名';

EXECUTE IMMEDIATE 'GRANT CREATE TABLE TO 用户名';

EXECUTE IMMEDIATE 'GRANT DELETE ANY TABLE TO 用户名';

EXECUTE IMMEDIATE 'GRANT DROP PUBLIC DATABASE LINK TO 用户名';

EXECUTE IMMEDIATE 'GRANT DROP ANY TRIGGER TO 用户名';

EXECUTE IMMEDIATE 'GRANT DROP ANY INDEX TO 用户名';

EXECUTE IMMEDIATE 'GRANT DROP ANY PROCEDURE TO 用户名';

EXECUTE IMMEDIATE 'GRANT DROP ANY TABLE TO 用户名';

EXECUTE IMMEDIATE 'GRANT DROP ANY VIEW TO 用户名';

>>

问题九:如何创建数据库 1、通过向导建立和使用数据库

第一步:选择服务视图,然后展开DataBase(数据库节点),右键点击JavaDB

启动服务器

2、在右键单击JavaDB,选择创建数据库

3、在d出的对话框中填写相应的名称,写完后点击确定完成的数据的创建。

ASP学习步骤 个对象 Request Response Session Server Applictaion  两个数据库组件 Adodb Recordset Adodb Connection Request From("表单名称") 得到From表单数据 Request QueryString("Url参数") 得到Url参数 index aspact=save  Request QueryString("act")

一 request Request Cookies("Cookie") 得到Cookies  Cookies  一般用于存储用户信息 用于验证 一般用于用户验证之类的 Session也有同样的类型 区别是Session是存在服务器上 Cookies是存在用户硬盘上 一般可以省略点方法 直接用Request("参数名") 他会依次用From QueryString Cookies去取值  Request 差不多就这些了

二 Response Response Write 向浏览器输出 Response Redirect 重转向 Response End 停止向浏览器输出 Response Cookies 向客户端写Cookies Response Cookies("CookieName") = "test" Responsp Cookies("CookieName") Domain="china " 这样写的话 在所有的China 的域名下用Request Cookies("CookieName")都能得到

三 Session Session("SessionName") = "" 把信息存储到Session里面 If Session("SessionName") <> "" Then 判断Session是否存在 一般用于验证 Session("SessionName") = "" 清空Session Session Abandon 清空所有Session Session TimeOut = 设置Session过期时间 单位为秒 Session是存在服务器上 Cookies是存在用户硬盘上 Session重启了进程池就没有了 Cookies我们就不能控制了 除非写个程序 强制清空

四 Server  Server Mappath 把虚拟路径转为实际路径 如果你的程序在C盘 那么你用path = Server Mappath("/")  那么和path = "c:" 是一样的 基于根目录 Server CreateObject 这个注册组件的  比较常用 Server CreateObject("Adodb RecordSet") 注册一个数据库组件

五 Applictaion  是一个全局对象 他和Session是一样的 区别在于 Session是存储单个的用户信息 Application是存储全局信息 Application("Site") = ">

以上就是关于《数据库原理》知识点之面向对象数据库全部的内容,包括:《数据库原理》知识点之面向对象数据库、openGauss数据库的主要逻辑对象有哪些、怎么创建数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9712923.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存