日韩欧美人妻无码精品白浆,夜夜嗨AV免费入口,国产欧美官网在线看,高校回应聋哑女生因长相完美被质疑

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

[點(diǎn)晴永久免費(fèi)OA]SQL基礎(chǔ)之?dāng)?shù)據(jù)庫(kù)表創(chuàng)建,數(shù)據(jù)庫(kù)的分離、附加(SQL腳本版)

admin
2023年4月18日 15:7 本文熱度 1794

本篇文章總結(jié)的是在SQL Server 2012數(shù)據(jù)庫(kù)環(huán)境下,使用SQL語(yǔ)句創(chuàng)建數(shù)據(jù)庫(kù)與創(chuàng)建表,并分離數(shù)據(jù)庫(kù)后在進(jìn)行附加操作,內(nèi)容比較基礎(chǔ),適合數(shù)據(jù)庫(kù)初學(xué)者參考學(xué)習(xí),希望對(duì)大家有所幫助!當(dāng)然,基礎(chǔ)知識(shí)掌握不牢的記得點(diǎn)贊收藏,以備不時(shí)之需!

下一篇文章將介紹在使用SQL Sever Management Studio管理工具時(shí),圖形界面下,進(jìn)行數(shù)據(jù)庫(kù)的創(chuàng)建、分離、附加、數(shù)據(jù)表的創(chuàng)建等操作。

一、通過(guò)SQL語(yǔ)句實(shí)現(xiàn)

1.1 創(chuàng)建數(shù)據(jù)庫(kù)

創(chuàng)建數(shù)據(jù)庫(kù)基礎(chǔ)語(yǔ)法結(jié)構(gòu)

create database 數(shù)據(jù)庫(kù)名稱        --創(chuàng)建數(shù)據(jù)庫(kù)
on primary
(
  name                --數(shù)據(jù)庫(kù)數(shù)據(jù)文件的邏輯名稱
  filename          --物理存放位置及物理文件名稱(Student_info.mdf就是在磁盤上顯示的名稱)
  size                --設(shè)置數(shù)據(jù)文件初始大小
  maxsize                --主文件的最大增長(zhǎng)值,unlimited是無(wú)限制
  filegrowth              --設(shè)置主數(shù)據(jù)文件增長(zhǎng)幅度
)
log on                  --定義事務(wù)日志文件
(
  name                 --數(shù)據(jù)庫(kù)日志文件的邏輯名稱
  filename              --物理存放位置及物理文件名稱
  size=                --設(shè)置事務(wù)日志文件初始大小
  maxsize                --設(shè)置最大限制為
  filegrowth              --設(shè)置事務(wù)日志增長(zhǎng)幅度
)


舉個(gè)例子,創(chuàng)建一個(gè)Student數(shù)據(jù)庫(kù),SQL腳本如下:

create database Student--創(chuàng)建數(shù)據(jù)庫(kù)
on primary(
  name= Student,--數(shù)據(jù)庫(kù)的邏輯名稱
  filename='D:\學(xué)生信息管理系統(tǒng)\Student.mdf',--物理存放位置及物理文件名稱(Student.mdf就是在磁盤上顯示的名稱)
  size=20,--初始大小20MB
  maxsize=300,--最大限制300MB
  filegrowth=5--主數(shù)據(jù)文件增長(zhǎng)幅度為5MB
)
log on--定義事務(wù)日志文件
(
  name =Student_log,--邏輯名稱
  filename='D:\學(xué)生信息管理系統(tǒng)\Student_log.ldf',--物理存放位置及物理文件名稱(Student_log.Ldf就是在磁盤上顯示的名稱)
  size=5,--初始大小為5MB
  maxsize=50,--最大限制為50MB
  filegrowth=1--事務(wù)日志增長(zhǎng)幅度為1MB
)


1.2 查看、驗(yàn)證創(chuàng)建的數(shù)據(jù)庫(kù)屬性是否符合要求

執(zhí)行sp_helpdb系統(tǒng)存儲(chǔ)過(guò)程查看Student數(shù)據(jù)庫(kù)的信息。 

sp_helpdb Student


查詢結(jié)果如下:

1.3 修改數(shù)據(jù)庫(kù)的屬性

假如,我們發(fā)現(xiàn)數(shù)據(jù)庫(kù)的屬性,創(chuàng)建的時(shí)候不小心寫錯(cuò)了或者因?yàn)閯e的原因需要修改數(shù)據(jù)屬性的時(shí)候應(yīng)該怎么辦呢?下邊介紹給你怎么進(jìn)行修改,例如:

將剛剛創(chuàng)建的數(shù)據(jù)庫(kù)Student數(shù)據(jù)文件的初始值大小 改為50MB, 最大值 改為400MB, 數(shù)據(jù)增長(zhǎng)量 改為5%, 日志文件初始值 改為30MB, 最大值 改為60MB, 數(shù)據(jù)增長(zhǎng)量 為6%

--修改數(shù)據(jù)文件屬性
alter DATABASE  Student
MODIFY FILE
(
  NAME = Student,--要修改屬性的數(shù)據(jù)庫(kù)mdf文件名稱
  SIZE = 50,--修改初始大小為30mb
  maxsize=400,--修改最大限制為300mb
  filegrowth=5%--修改事務(wù)日志增長(zhǎng)幅度為5%
)
--修改事務(wù)日志文件屬性
alter DATABASE  Student
MODIFY FILE
(
  NAME =Student_log,--要修改屬性日志的ldf文件名稱
  size=30,--修改初始大小為20mb
  maxsize=60,--修改最大限制為60mb
  filegrowth=6%--修改事務(wù)日志增長(zhǎng)幅度為6%
)


修改后數(shù)據(jù)庫(kù)屬性信息查詢

1.4 數(shù)據(jù)庫(kù)的分離與附加

數(shù)據(jù)庫(kù)分離是指將數(shù)據(jù)庫(kù)文件從數(shù)據(jù)庫(kù)服務(wù)器實(shí)例中分離出來(lái),相當(dāng)于關(guān)閉了數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)分離后,應(yīng)用程序不能連接到該數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)文件可以被其它進(jìn)程訪問(wèn)。通常分離數(shù)據(jù)庫(kù)用于快速地將數(shù)據(jù)庫(kù)遷移到另一個(gè)SQL Server實(shí)例。數(shù)據(jù)庫(kù)分離后,還可以附加到SQL Server實(shí)例。

一般默認(rèn)情況下數(shù)據(jù)庫(kù)在聯(lián)機(jī)狀態(tài)下我們不能對(duì)數(shù)據(jù)庫(kù)文件進(jìn)行任何復(fù)制刪除等操作,如果將數(shù)據(jù)庫(kù)分離的話就可以對(duì)數(shù)據(jù)文件進(jìn)行復(fù)制、剪切、刪除等操作了。一般想直接備份數(shù)據(jù)文件,就先分離數(shù)據(jù)庫(kù),之后把數(shù)據(jù)文件復(fù)制到別的地方,再把數(shù)據(jù)文件附加回去就可以了。備份數(shù)據(jù)庫(kù)是將數(shù)據(jù)庫(kù)中全部對(duì)象以特定格式導(dǎo)成為備份文件,至于格式全部是數(shù)據(jù)庫(kù)引擎來(lái)使用,用戶無(wú)需關(guān)心。導(dǎo)出數(shù)據(jù)庫(kù)是將數(shù)據(jù)庫(kù)中某些對(duì)象導(dǎo)出為其他格式的文件,一般都是行集的形式。


數(shù)據(jù)庫(kù)分離、附加SQL語(yǔ)法如下:
--聲明數(shù)據(jù)庫(kù)引用
use master;
go
--分離
exec sp_detach_db @dbname=N'數(shù)據(jù)庫(kù)名'
--附加
exec sp_attach_db @dbname=N'數(shù)據(jù)庫(kù)名',@filename1=N'.mdf的文件路徑',@filename2=N'.ldf的文件路徑'


值得注意的事,直接分離可能會(huì)報(bào)錯(cuò),就像這樣“無(wú)法分離 數(shù)據(jù)庫(kù)“Student”,因?yàn)樗?dāng)前正在使用。

如果我們遇到這種情況,可以先這樣進(jìn)行操作

--根據(jù)查詢出的DBID,得到用戶連接的spid
select * from sysprocesses where dbid=DB_ID('Student')
--然后殺掉它,這個(gè)是上邊語(yǔ)句的查詢結(jié)果,我的顯示是四個(gè)進(jìn)程
KILL 81
KILL 82
KILL 84
KILL 107


實(shí),分離不了數(shù)據(jù)庫(kù)的根本原因是有用戶連接操作,首先我們要終止用戶連接,終止連接就必須要干掉進(jìn)程。

再次執(zhí)行分離數(shù)據(jù)庫(kù)命令就OK了

--聲明數(shù)據(jù)庫(kù)引用
use master;
go
----將數(shù)據(jù)庫(kù)Student分離
exec sys.sp_detach_db @dbname='Student'
go


分離之后在進(jìn)行附加操作如下

--附加Student數(shù)據(jù)庫(kù)
exec sp_attach_db @dbname='Student',@filename1='D:\學(xué)生信息管理系統(tǒng)\Student.mdf',@filename2='D:\學(xué)生信息管理系統(tǒng)\Student_log.ldf'


1.5 創(chuàng)建數(shù)據(jù)表

基本語(yǔ)法:

create table 表名(
  屬性名1 類型,
  屬性名2 類型,
  屬性名3 類型    --注意最后一條語(yǔ)句不用','
)


舉例,在Student數(shù)據(jù)庫(kù)下,創(chuàng)建三張數(shù)據(jù)表

use Student;
go
--創(chuàng)建Student表
create table Student(
  Sno char(8) primary key not null,      --學(xué)號(hào),并設(shè)置為主鍵(primary key)和非空(not null)
  Sname varchar(8) not null,          --學(xué)生姓名
  Sex char(2) default '男' not null,      --性別,設(shè)置默認(rèn)值(default)為'男'
  Birth smalldatetime not null,        --出生年月
  Classno char(3) not null,          --班級(jí)號(hào)
  Entrance_date smalldatetime not null,    --入學(xué)時(shí)間
  Home_addr varchar(40)            --家庭住址(可以為空)
)
--創(chuàng)建Course表
create table Course(
  Cno char(3) primary key not null,            --課程號(hào)
  Cname varchar(20) not null,          --課程名稱
  Toal_perior smallint,            --總學(xué)時(shí)
  Gredit tinyint check(Gredit>0 and Gredit<=6)  --學(xué)分,這里要使用check約束
)
--創(chuàng)建sc表
create table Sc(
  Sno char(8)  not null,            --學(xué)號(hào)
  Cno char(3) not null,            --課程號(hào)
  primary key(sno,cno),            --設(shè)置sno和cno的屬性組為主鍵
  foreign key(sno)references student(sno),    --設(shè)置外鍵
  foreign key(cno)references course(cno),    --設(shè)置外鍵
  Grade tinyint check(  Grade>=0 and Grade<=100)  --成績(jī)
)

該文章在 2023/4/18 15:14:01 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved