⑴ 数据库检查约束怎么写
什么时候添加都行。(你的标题意思不正确,说成数据库中表的外键约束就对了) 主键作用:用以标识唯一一条记录,也就是说用来区分行数据的标志。做数据库里的一张数据表时,一般只要定义了列属性,数据表就算是建立完成了。类似于/*创建StudentsInfo表*/ use Moonfox_db if exists(select * from sysobjects where name='StudentsInfo') drop table StudentsInfo create table StudentsInfo ( SName nvarchar(10) not null,--姓名 SID int identity (10000,1)primary key,--学号,主键 Gender nchar(2) not null check(Gender='男' or Gender='女'),--性别,添加限制 SClass nvarchar(10) not null,--班级 SBirthday datetime not null,--出生日期 SNative nvarchar(10),--籍贯 SPhoto image,--照片 Remarks nvarchar(200)--简历 ) 这些就是一张表里的属性,也就是我们通常意义上的列,只要把它做好了,表里的数据你想什么时候添加都行。
⑵ 如何检查数据库中数据的一致性
数据库一致性检查(dbcc)提供了一些命令用于检查数据库的逻辑和物理一致性。Dbcc主要有两个功能:
使用checkstorage 或 checktable 及 checkdb 在页一级和行一级检查页链及数据指针。
使用checkstorage, checkalloc, 或 checkverify, tablealloc, 及indexalloc
检查页分配。
在下列情况中需要使用 dbcc 命令: 作为数据库日常维护工作的一部分, 数据库内部结构的完整性决定于sa 或dbo 定期地运行
dbcc 检查。 在系统报错以后, 确定数据库是否有损坏。 在备份数据库之前, 确保备份的完整性。 如果怀疑数据库有损坏时, 例如,
使用某个表时报出表损坏的信息, 可以使用 dbcc 确定数据库中其他表是否也有损坏。
下面是dbcc的简单用法: dbcc checktable (table_name) 检查指定的表,
检查索引和数据页是否正确链接, 索引是否正确排序, 所有指针是否一致, 每页的数据信息是否合理, 页偏移是否合理。 dbcc
checkdb (database_name) 对指定数据库的所有表做和checktable 一样的检查。 dbcc
checkalloc (database_name,fix|nofix) 检查指定数据库, 是否所有页面被正确分配,
是否被分配的页面没被使用。当使用"fix"选项时,在检查数据库的同时会自动修复有问题的页面。(若数据库数据量很大,则该过程会持续很长时间。)
dbcc tablealloc (table_name,fix|nofix) 检查指定的表, 是否所有页面被正确分配,
是否被分配的页面没被使用。是 checkalloc 的缩小版本,
对指定的表做完整性检查。当使用"fix"选项时,在检查数据表的同时会自动修复数据表中有问题的页面。
关于上述命令的其它选项及详细使用方法和checkstorage, checkverify, indexalloc
的详细使用方法, 请参阅有关命令手册。 举例1: Unix平台检查pubs2数据库的一致性 单用户模式启动Server:
$SYBASE/install startserver -f RUN_server_name -m
vi dbcc_db.sqluse mastergosp_dboption pubs2,"single user",truegouse pubs2gocheckpoint go dbcc checkdb(pubs2)godbcc checkalloc(pubs2,fix)godbcc checkcatalog(pubs2)gouse mastergosp_dboption pubs2,"single user",falsegouse pubs2gocheckpointgoquit go isql -Usa -Pxxxxxx -SSYBASE dbcc_db.out
grep Msg dbcc_db.out
举例2: Unix平台检查pubs2数据库中titles表的一致性
⑶ 数据库的默认约束和检查约束区别!
1.写法
默认:ALTER TABLE 表名 ADD CONSTRAINT DF_字段 DEFAULT(字段) FOR 默认值
检查:ALTER TABLE 表名 ADD CONSTRAINT CK_字段 CHECK(字段 BETWEEN 1 AND 100)
2.环境
默认:一个字段,一般情况下都是某个值,那么这个字段就应该添加默认约束。这个字段插入
时比较方便省事。
检查:一个字段,有一定的限制,比如,上面的例子,如果是年龄,你该限制在1~150之间,
如果插入的数字小于0或者大于150,那么就会插入失败。
⑷ sql数据库中,哪些是检查子句,
select * from 表名 where willnum>3
⑸ 怎么检查数据库的完整性约束
数据完整性
强制数据完整性可确保数据库中的数据质量。例如,如果输入了 employee_id 值为 123 的职员,那么该数据库不应允许其他职员使用同一 ID 值。如果计划将 employee_rating 列的值范围设定为从 1 到 5,则数据库不应接受 6。如果表有一 dept_id 列,该列存储职员的部门编号,则数据库应只允许接受公司中的有效部门编号。
对表进行计划有两个重要步骤:标识列的有效值和确定如何强制列中的数据完整性。数据完整性有四种类型:
实体完整性
域完整性
引用完整性
用户定义完整性
实体完整性
实体完整性将行定义为特定表的唯一实体。实体完整性强制表的标识符列或主键的完整性(通过索引、UNIQUE 约束、PRIMARY KEY 约束或 IDENTITY 属性)。
域完整性
域完整性是指给定列的输入有效性。强制域有效性的方法有:限制类型(通过数据类型)、格式(通过 CHECK 约束和规则)或可能值的范围(通过 FOREIGN KEY 约束、CHECK 约束、DEFAULT 定义、NOT NULL 定义和规则)。
引用完整性
在输入或删除记录时,引用完整性保持表之间已定义的关系。在 Microsoft® SQL Server™ 2000 中,引用完整性基于外键与主键之间或外键与唯一键之间的关系(通过 FOREIGN KEY 和 CHECK 约束)。引用完整性确保键值在所有表中一致。这样的一致性要求不能引用不存在的值,如果键值更改了,那么在整个数据库中,对该键值的所有引用要进行一致的更改。
强制引用完整性时,SQL Server 禁止用户进行下列操作:
当主表中没有关联的记录时,将记录添加到相关表中。
更改主表中的值并导致相关表中的记录孤立。
从主表中删除记录,但仍存在与该记录匹配的相关记录。
⑹ 如何检查和设置数据库的基本属性
1.Power script 语言里的事务处理对象怎么理解
PowerBuilder程序与数据库之间传递信息的一个结构变量,共有15个成员.你可以详细列表它的所有成员看看它的组成.PB的应用程序会初始化一个全局的结构体变量,SQLCA,当然你也可以自定义一个自己的事务对象.
1 DBMS string 所使用的数据库管理系统的名字,如Sybase,Oracle,ODBC。
2 Database string 要连接的数据库名字。
3 UserID string 连接数据库所用的用户名。有的DBMS不需要此项。
4 DBPass string 用户连接数据库的口令。
5 Lock string 这是数据库的保护级别,一般不必给出。
6 LogID string 登录到数据库服务器上的用户名,有的DBMS不需要此项,但Sybase和Oracle需要指定这个参数。
7 LogPass string 登录到数据库服务器上的用户口令。这个属性可设可不设,但Sybase和Oracle需要指定口令。
⑺ 教你如何检查Access数据库中数据有效性
开发一个好的数据库管理系统,关键是要确保录入数据的完整性和准确性。Access提供了很多检查录入数据有效性的手段,笔者这里就简单介绍两种常用的方法。 一、 利用字段属性 1. 数据类型属性 :数据类型决定了用户能保存在此字段中值的种类,如果用户键入的数据与字段规定的类型不一致,Access就不会存储该数据。如“日期/时间”字段,只允许输入有效的日期与时间格式。 2. 字段大小属性 :对于“数字”型字段,通过设置字段的大小控制输入值的类型和范围;而对“文本”字段,可以设置可输入的最大字符数(最大为255)。 3. 必填字段属性 :数据库中除“自动编号”字段外(该字段可自行生成数据)的其它字段,都可利用设置必填字段属性值为“是”,要求字段中必须有数据输入,以避免一些重要信息的遗漏。 4. 输入掩码属性 :该属性可帮助用户按照正确的格式输入数据。如创建输入掩码显示电话号码的括号、空格及连接符,输入时只要在空格中填入即可。 5. 有效性规则属性 :字段有效性规则属性用于在用户离开字段时,检查输入字段的值是否符合要求。 表有效性规则与字段有效性规则不同,当需要设置涉及表中多个字段的有效性规则属性时,可以设置表属性的有效性规则。 二、 使用事件过程 在某些情况下,当有效性规则含有复杂的条件,并且需根据条件执行不同的操作时,往往很难写出有效性规则,这时可以通过对如下的事件过程编写代码来代替有效性规则进行检查。
⑻ oracle数据库日常健康检查会检查哪些内容使用哪些命令
oracle检测坏块的方式:
1、利用oracle的RMAN工具
2、利用dbv工具检测
3、利用 exp/imp工具检测
其中2、3的方式无法彻底检测所有坏块,所以重点介绍下RMAN方式
RMAN>backup check logical validate datafile n ;
可以检查数据文件是否包含坏块,同时并不产生实际的备份输出。
而且当使用Recovery Manager进行实际的数据库备份时,同时也就进行了坏块
检查。但要注意的是,在线使用Recovery Manager扫描坏块和备份时,需要数
据库运行在归档模式(archive log),否则只能在数据库未打开的情况下进行。
⑼ SQL...什么是数据库的检查点
CKPT is responsible for:
• Signaling DBWn at checkpoints
• Updating data file headers with
checkpoint information
• Updating control files with
checkpoint information
Background Processes and Recovery: Checkpoint (CKPT)
To understand instance recovery, you need to understand the functioning of certain background
processes.
Every three seconds (or more frequently), the CKPT process stores data in the control file to
document which modified data blocks DBWn has written from the SGA to disk. This is called a
“checkpoint.” The purpose of a checkpoint is to identify that place in the online redo log file
where instance recovery is to begin (which is called the “checkpoint position”).
In the event of a log switch, the CKPT process also writes this checkpoint information to the
headers of data files.
Checkpoints exist for the following reasons:
• To ensure that modified data blocks in memory are written to the disk regularly so that data
is not lost in case of a system or database failure
• To rece the time required for instance recovery. Only the online redo log file entries
following the last checkpoint need to be processed for recovery.
• To ensure that all committed data has been written to data files ring shutdown
The checkpoint information written by the CKPT process includes checkpoint position, system
change number, location in the online redo log file to begin recovery, information about logs,
and so on.
ORACLE CHECKPOINT的作用
checkpoint是一个数据库事件,它将已修改的数据从高速缓存刷新到磁盘,并更新控制文件和数据文件。
我们知道了checkpoint会刷新脏数据,但什么时候会发生checkpoint呢?以下几种情况会触发checkpoint。
1.当发生日志组切换的时候
2.当符合LOG_CHECKPOINT_TIMEOUT,LOG_CHECKPOINT_INTERVAL,fast_start_io_target,fast_start_mttr_target参数设置的时候
3.当运行ALTER SYSTEM SWITCH LOGFILE的时候
4.当运行ALTER SYSTEM CHECKPOINT的时候
5.当运行alter tablespace XXX begin backup,end backup的时候
6.当运行alter tablespace ,datafile offline的时候;
你再好好看看文档吧
⑽ 完整性约束对于数据库数据检查有何作用
1.数据库完整性约束能够防止合法用户使用数据库时向数据库中添加不合语义的数据。
2.利用基于DBMS的完整性控制机制来实现业务规则,易于定义,容易理解,而且可以降低应用程序的复杂性,提高应用程序的运行效率。同时,基于DBMS的完整性控制机制是集中管理的,因此比应用程序更容易实现数据库的完整性。
3.合理的数据库完整性设计,能够同时兼顾数据库的完整性和系统的效能。
4.在应用软件的功能测试中,完善的数据库完整性有助于尽早发现应用软件的错误