資料庫檢查
select * from 表名 where willnum>3
B. 如何檢查mysql從資料庫是否正常運行,腳本
一般在從庫執行show slave status,看behind值是否為0來判斷。
更准確的一些的方法是在主庫做一個表,每秒insert一個時間戳,在從庫讀取,來看時間差是否超過1秒。
C. 如何檢查和設置資料庫的基本屬性
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需要指定口令。
D. 資料庫驗證
確保2003的機器上的資料庫允許遠程鏈接,然後修改鏈接字元串中的server地址,改成03的ip就可以
E. 怎麼檢查資料庫的完整性約束
數據完整性
強制數據完整性可確保資料庫中的數據質量。例如,如果輸入了 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 禁止用戶進行下列操作:
當主表中沒有關聯的記錄時,將記錄添加到相關表中。
更改主表中的值並導致相關表中的記錄孤立。
從主表中刪除記錄,但仍存在與該記錄匹配的相關記錄。
F. 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的時候;
你再好好看看文檔吧
G. 資料庫檢查約束怎麼寫
什麼時候添加都行。(你的標題意思不正確,說成資料庫中表的外鍵約束就對了) 主鍵作用:用以標識唯一一條記錄,也就是說用來區分行數據的標志。做資料庫里的一張數據表時,一般只要定義了列屬性,數據表就算是建立完成了。類似於/*創建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)--簡歷 ) 這些就是一張表裡的屬性,也就是我們通常意義上的列,只要把它做好了,表裡的數據你想什麼時候添加都行。
H. 如何檢查資料庫中數據的一致性
資料庫一致性檢查(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表的一致性
I. 資料庫的默認約束和檢查約束區別!
1.寫法
默認:ALTER TABLE 表名 ADD CONSTRAINT DF_欄位 DEFAULT(欄位) FOR 默認值
檢查:ALTER TABLE 表名 ADD CONSTRAINT CK_欄位 CHECK(欄位 BETWEEN 1 AND 100)
2.環境
默認:一個欄位,一般情況下都是某個值,那麼這個欄位就應該添加默認約束。這個欄位插入
時比較方便省事。
檢查:一個欄位,有一定的限制,比如,上面的例子,如果是年齡,你該限制在1~150之間,
如果插入的數字小於0或者大於150,那麼就會插入失敗。