SqlServer中通過T SQL的資料庫操作

2021-06-03 02:39:17 字數 3890 閱讀 9128

sqlserver中通過t-sql的資料庫操作

sqlserver中的三種資料檔案格式

*.mdf -- 主資料庫檔案(乙個資料庫只能有乙個)

*.ndf -- 輔資料庫檔案(0-n個)

*.ldf -- 日誌檔案(至少乙個)

備份sql server  

use master  

exec sp_addumpdevice 'disk', 'testback', 'c:\mssql7backup\mynwind_1.dat'  

開始備份  

backup database pubs to testback  

建立資料庫

create database database_name

[on [primary]  [[,…n]  [,[,…n]]  ]

[log on ]

[for restore]

::=([name=logical_file_name,]

filename='os_file_name'

[,size=size]

[,maxsize=]

[,filegrowth=growth_increment] )  [,…n]

::=filegroup filegroup_name [,…n]

引數說明:(中括號內為可選,不加則使用預設值)

database_name:資料庫的名稱,最長為128個字元。

primary:該選項是乙個關鍵字,指定主檔案組中的檔案。  

log on:指明事務日誌檔案的明確定義。  

name:指定資料庫的邏輯名稱,這是在sql server系統中使用的名稱,是資料庫在sql server中的識別符號。

filename:指定資料庫所在檔案的作業系統檔名稱和路徑,該作業系統檔名和name的邏輯名稱一一對應。

size:指定資料庫的初始容量大小。  

maxsize:指定作業系統檔案可以增長到的最大尺寸。  

filegrowth:指定檔案每次增加容量的大小,當指定資料為0時,表示檔案不增長。

例如:(注意,e:\data目錄一定要存在)

一、主,輔資料檔案

create database jadge

on primary(

name        = 'jadge',

filename    = 'e:\data\jadge.mdf',

size = 1mb,

maxsize = 10mb,

filegrowth = 10%

) ,(

name        = 'jadge_d',

filename    = 'e:\data\jadge_d.ndf',

size        = 1,

maxsize        = unlimited,    --unlimited表示不限大小

filegrowth    = 1mb

) log on(

name        = 'jadge_log',

filename    = 'e:\data\jadge_log.ldf',

size        = 1,

maxsize        = 5,

filegrowth    = 1

) go

二、檔案組

create database jadge

on primary(

name = 'jadge',

filename = 'e:\data\jadge.mdf',

size = 3mb,

maxsize = 10mb,

filegrowth = 1

) ,filegroup jadge_nd(

name        = 'jadge_db1',

filename    = 'e:\data\jadge_db1.ndf',

size        = 4,

maxsize        = 20,

filegrowth    = 20%

) ,(

name        = 'jadge_db2',

filename    = 'e:\data\jadge_db2.ndf',

size        = 4,

maxsize        = 20,

filegrowth    = 20%

) log on(

name = 'jadge_lg',

filename = 'e:\data\jadge_lg.log',

size = 2mb,

maxsize = 10mb,

filegrowth = 10%

) go

刪除資料庫

drop database database_name[,…n]

例如:

drop database jadge

修改資料庫

alter database databasename

}  引數說明:

add file[,…n] [to filegroup filegroupname]:表示向指定的檔案組中新增新的資料檔案。

add log file [,…n]:增加新的日誌檔案。

remove file logical_file_name:刪除指定的作業系統檔案。

remove filegroup filegroup_name:刪除指定的檔案組。

modify file :修改某個作業系統檔案。

modify name=new_databasename:重新命名資料庫。

add filegroup filegroup_name:增加乙個檔案組。

modify filegroup filegroup_name:修改某個指定檔案組的屬性。

例如:

#新增乙個檔案到檔案組

alter database jadge

add file(

name        = 'jadge_db2',

filename    = 'e:\data\base\jadge_db1',

size        = 2,

maxsize        = 15,

filegrowth    = 1

) to filegroup jadge_nd

go #新增日誌檔案

alter database dd

add log file(

name        = 'anlog',

filename    = 'e:\anlog.ldf',

size        = 2,

maxsize        = 8,

filegrowth    = 1

) #其他與上面的類似,這裡就不舉例了。

#注 刪除檔案組時,必須先將其清空

幾個sql server中常用的儲存過程,注意使用時加exec

sp_help  資料庫物件名稱

報告有關資料庫物件(sysobjects 表中列出的任何物件)、使用者定義資料型別或 microsoft? sql server? 所提供的資料型別的資訊

sp_helptext  檢視(觸發器、儲存過程)

顯示規則、預設值、未加密的儲存過程、使用者定義函式、觸發器或檢視的文字。    顯示有關資料庫物件相關性的資訊(例如,依賴表或檢視的檢視和過程,以及檢視或過程所依賴的表和檢視)

sp_depends  資料庫物件名稱

sp_helpindex [@objname=] 'name'    --使用系統儲存過程檢視索引資訊

SQL Server資料庫效能優化(1)T SQL

1.select 語句的效能 1 只查詢需要的字段,避免使用select 只查詢需要的字段,可以避免許多不必要的io。減少欄位的輸出,可以更有效地利用覆蓋索引。2 限定查詢結果集的數量。使用top字句等限制結果集的大小,可以避免批量資料的操作,並且有效地使用索引,防止掃瞄操作帶來的大量io和記憶體的...

在SQL Server中通過SQL語句實現分頁查詢

建立表 create table testtable id int identity 1,1 not null firstname nvarchar 100 collate chinese prc ci as null lastname nvarchar 100 collate chinese pr...

通過osql連線sqlserver

sqlserver2000查詢分析器只支援64k指令碼,所以一般通過insert匯入資料的.sql指令碼就根本是不可能的事了,通過搜尋發現可以通過 osql命令連線指令碼檔案並且執行指令碼。用法 osql u 登入 id p 密碼 s 伺服器 h 主機名 e 可信連線 d 使用資料庫名稱 l 登入超...