⑴ 如何在sql server2008同時創建主數據文件和輔助數據文件
如果是寫語句的,可以參考一下幫助文件:
CREATEDATABASESales
ONPRIMARY
(NAME=SPri1_dat,
FILENAME='D:SalesDataSPri1dat.mdf',
SIZE=10,
MAXSIZE=50,
FILEGROWTH=15%),
(NAME=SPri2_dat,
FILENAME='D:SalesDataSPri2dt.ndf',
SIZE=10,
MAXSIZE=50,
FILEGROWTH=15%),
FILEGROUPSalesGroup1
(NAME=SGrp1Fi1_dat,
FILENAME='D:SalesDataSG1Fi1dt.ndf',
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5),
(NAME=SGrp1Fi2_dat,
FILENAME='D:SalesDataSG1Fi2dt.ndf',
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5),
FILEGROUPSalesGroup2
(NAME=SGrp2Fi1_dat,
FILENAME='D:SalesDataSG2Fi1dt.ndf',
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5),
(NAME=SGrp2Fi2_dat,
FILENAME='D:SalesDataSG2Fi2dt.ndf',
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5)
LOGON
(NAME=Sales_log,
FILENAME='E:SalesLogsalelog.ldf',
SIZE=5MB,
MAXSIZE=25MB,
FILEGROWTH=5MB);
GO
如果是圖形界面:
⑵ 如何在sql server 中創建文件組
create database GSM1
on primary --主文件及主文件組
(
name = main1, --邏輯文件名
filename = 'c:program filesmicrosoft sql servermssql.2mssqldatamian1.mdf', --物理文件名
size = 10MB, --初始大小
filegrowth = 1MB --增長速度
),
(
name = main2,
filename = 'c:program filesmicrosoft sql servermssql.2mssqldatamian2.ndf',
size = 10MB, filegrowth = 1MB
),
filegroup group1 --文件組group1
(
name = data, filename = 'F:資料庫GSMdata.ndf', size = 5MB, filegrowth = 1MB
),
filegroup group2 --文件組group2
(
name = indexInfo, filename = 'D:SQL2005indexGSMindexInfo.ndf', size = 5MB, filegrowth = 1MB
)
log on --日誌文件
(
name = 'GSM.log',
filename = 'c:program filesmicrosoft sql servermssql.2mssqldataGSMlog.ldf' ,
size = 2048KB , filegrowth = 1MB
)
(2)sql語句創建主文件擴展閱讀:
SQL SERVER中文件組的用途
1、在指定文件組里創建表
--在指定文件組中創建文件
create table Test
(
Tid int primary key identity,
Title01 nvarchar(100) default('標題01'),
Title02 nvarchar(100) default('標題02'),
Title03 nvarchar(100) default('標題03'),
DataStatus tinyint default(0) --0~255 size:1位元組
) on TestData
2、利用文件組創建資料庫
--創建資料庫
create database BigValues
on primary --資料庫文件,主文件組
(
name='BigValues_Data', --邏輯名
size=10mb, --初始大小
filegrowth=10%, --文件增長
maxsize=1024mb, --最大值
filename=N'E:\SQL\BigValues_Data.mdf'--存放路徑(包含文件後綴名)
),
(
name='BigValues_Data1',
size=10mb,
filegrowth=10%,
maxsize=1024mb,
filename=N'F:\Work\SQL\BigValues_Data1.mdf'
),
filegroup TestData --TestData文件組(表創建到不同的文件組裡面可以分擔壓力)
(
name='BigValues_Data_Num1',
size=10mb,
filegrowth=10%,
maxsize=1024mb,
filename=N'E:\SQL\BigValues_Data_Num1.ndf'
),
(
name='BigValues_Data_Num2',
size=10mb,
filegrowth=10%,
maxsize=1024mb,
filename=N'F:\Work\SQL\BigValues_Data_Num2.ndf'
)
log on --日記
(
name='BigValues_Log1',
size=5mb,
filegrowth=5%,
filename=N'E:\SQL\BigValues_log1.ldf'
),
(
name='BigValues_Log2',
size=5mb,
filegrowth=5%,
filename=N'F:\Work\SQL\BigValues_log2.ldf'
)
go
⑶ sql 語句如何創建文件,不是創建文件夾哦
有這樣的用法嗎?
你是不是想用sql創建表空間啊,是的話就
create tablespace dataA(表空間名)datafile 'C:\oradata\dataA.dbf' size 2000m;
意思是創建一個名為dataA的表空間,放在'C:\oradata\下,大小為2000兆。
⑷ SqlServer用sql語句怎麼創建文件
假設資料庫名稱為pubs,添加一個名為pubs_data2的次要數據文件,代碼為
ALTER DATABASE pubs
ADD FILE
(
NAME = 'pubs_data2',
FILENAME ='pubs_data2.ndf' ,
SIZE = 10mb ,
FILEGROWTH = 1mb )
TO FILEGROUP PRIMARY
次要數據文件與主數據文件作用基本一樣,當你的主數據文件空間不足而且由於磁碟限制無法增長時,就只能添加新的數據文件了。
⑸ Sql語句創建數據文件,和日誌文件問題
你看你,怎麼這么不小心啊,首先你的語法是沒有錯誤的,但是你看你的日誌文件名字怎麼和主資料庫文件名一樣啊,把你的日誌文件名改成hufang_log就行了啊!!!呵呵!!
Log on
(
/*--日誌文件具體描述同上--*/
name='hufang_log',
Filename='F:\project\hufang_log.ldf',
Size=2MB,
MaxSize=10MB,
FIleGrowth=15%
)
go
⑹ 怎麼用sql語句創建文件夾
create table #([output] varchar(8000))
declare @BackupPath varchar(200)
set @BackupPath='D:\文件夾'
set @BackupPath='dir '+@BackupPath+''
insert into # exec master..xp_cmdshell @BackupPath
if exists(select 1 from # where [output]='找不到文件')
begin
set @BackupPath=replace(@BackupPath,'dir ','md ')
exec master..xp_cmdshell @BackupPath
end
else
begin
print '文件夾已存在!'
end
drop table #
⑺ 如何使用sql語句創建資料庫
CREATE DATABASE database_name
[ CONTAINMENT = { NONE | PARTIAL } ]
[ ON
[ PRIMARY ] <filespec> [ ,...n ]
[ , <filegroup> [ ,...n ] ]
[ LOG ON <filespec> [ ,...n ] ]
]
[ COLLATE collation_name ]
[ WITH <option> [,...n ] ]
[;]
<option> ::=
{
FILESTREAM ( <filestream_option> [,...n ] )
| DEFAULT_FULLTEXT_LANGUAGE = { lcid | language_name | language_alias }
| DEFAULT_LANGUAGE = { lcid | language_name | language_alias }
| NESTED_TRIGGERS = { OFF | ON }
| TRANSFORM_NOISE_WORDS = { OFF | ON}
| TWO_DIGIT_YEAR_CUTOFF = <two_digit_year_cutoff>
| DB_CHAINING { OFF | ON }
| TRUSTWORTHY { OFF | ON }
}
<filestream_option> ::=
{
NON_TRANSACTED_ACCESS = { OFF | READ_ONLY | FULL }
| DIRECTORY_NAME = 'directory_name'
}
To attach a database
CREATE DATABASE database_name
ON <filespec> [ ,...n ]
FOR { { ATTACH [ WITH <attach_database_option> [ , ...n ] ] }
| ATTACH_REBUILD_LOG }
[;]
<filespec> ::=
{
(
NAME = logical_file_name ,
FILENAME = { 'os_file_name' | 'filestream_path' }
[ , SIZE = size [ KB | MB | GB | TB ] ]
[ , MAXSIZE = { max_size [ KB | MB | GB | TB ] | UNLIMITED } ]
[ , FILEGROWTH = growth_increment [ KB | MB | GB | TB | % ] ]
)
}
<filegroup> ::=
{
FILEGROUP filegroup_name [ CONTAINS FILESTREAM ] [ DEFAULT ]
<filespec> [ ,...n ]
}
<attach_database_option> ::=
{
<service_broker_option>
| RESTRICTED_USER
| FILESTREAM ( DIRECTORY_NAME = { 'directory_name' | NULL } )
}
<service_broker_option> ::=
{
ENABLE_BROKER
| NEW_BROKER
| ERROR_BROKER_CONVERSATIONS
}
Create a database snapshot
CREATE DATABASE database_snapshot_name
ON
(
NAME = logical_file_name,
FILENAME = 'os_file_name'
) [ ,...n ]
AS SNAPSHOT OF source_database_name
[;]
database_name
新資料庫的名稱。
資料庫名稱在 SQL Server 的實例中必須唯一,並且必須符合 標識符規則。
除非沒有為日誌文件指定邏輯名稱,否則 database_name 最多可以包含 128 個字元。
如果未指定邏輯日誌文件名稱,則 SQL Server 將通過向 database_name 追加後綴來為日誌生成 logical_file_name 和 os_file_name。
這會將 database_name 限制為 123
個字元,從而使生成的邏輯文件名稱不超過 128 個字元。
如果未指定數據文件的名稱,則 SQL Server 使用 database_name 作為 logical_file_name 和 os_file_name。
默認路徑從注冊表中獲得。
可以使用 Management Studio 中的「伺服器屬性」(「資料庫設置」頁)更改默認路徑。
更改默認路徑要求重新啟動 SQL Server。
CONTAINMENT
指定資料庫的包含狀態。
NONE = 非包含資料庫。
PARTIAL = 部分包含的資料庫。
ON
指定顯式定義用來存儲資料庫數據部分的磁碟文件(數據文件)。
當後面是以逗號分隔的、用以定義主文件組的數據文件的 <filespec> 項列表時,需要使用
ON。
主文件組的文件列表可後跟以逗號分隔的、用以定義用戶文件組及其文件的 <filegroup>
項列表(可選)。
PRIMARY
指定關聯的 <filespec> 列表定義主文件。
在主文件組的 <filespec> 項中指定的第一個文件將成為主文件。
一個資料庫只能有一個主文件。
有關詳細信息,請參閱 資料庫文件和文件組。
如果沒有指定 PRIMARY,那麼 CREATE DATABASE
語句中列出的第一個文件將成為主文件。
LOG ON
指定顯式定義用來存儲資料庫日誌的磁碟文件(日誌文件)。
LOG ON 後跟以逗號分隔的用以定義日誌文件的 <filespec> 項列表。
如果沒有指定 LOG ON,將自動創建一個日誌文件,其大小為該資料庫的所有數據文件大小總和的 25% 或 512
KB,取兩者之中的較大者。
此文件放置於默認的日誌文件位置。
有關此位置的信息,請參閱 查看或更改數據文件和日誌文件的默認位置 (SQL Server Management Studio)。
不能對資料庫快照指定 LOG ON。
COLLATE collation_name
指定資料庫的默認排序規則。
排序規則名稱既可以是 Windows 排序規則名稱,也可以是 SQL 排序規則名稱。
如果沒有指定排序規則,則將 SQL Server 實例的默認排序規則分配為資料庫的排序規則。
不能對資料庫快照指定排序規則名稱。
不能使用 FOR ATTACH 或 FOR ATTACH_REBUILD_LOG
子句指定排序規則名稱。
有關如何更改附加資料庫的排序規則的信息,請訪問此 Microsoft 網站。
有關 Windows 和 SQL 排序規則名稱的詳細信息,請參閱 COLLATE (Transact-SQL)。
注意
包含資料庫的排序方式不同於非包含資料庫。
有關詳細信息,請參閱 包含資料庫的排序規則。
WITH <選項>
僅在將 CONTAINMENT 設置為 PARTIAL 之後,才允許使用以下選項。
如果將 CONTAINMENT 設置為 NONE,將發生錯誤。
<filestream_options>
NON_TRANSACTED_ACCESS = { OFF | READ_ONLY | FULL }
指定對資料庫的非事務性 FILESTREAM 訪問的級別。
USE master;
GO
CREATE DATABASE mytest;
GO
-- Verify the database files and sizes
SELECT name, size, size*1.0/128 AS [Size in MBs]
FROM sys.master_files
WHERE name = N'mytest';
GO
USE master;
GO
CREATE DATABASE mytest;
GO
-- Verify the database files and sizes
SELECT name, size, size*1.0/128 AS [Size in MBs]
FROM sys.master_files
WHERE name = N'mytest';
GO
B.創建指定數據和事務日誌文件的資料庫
下面的示例將創建資料庫 Sales。
因為沒有使用關鍵字 PRIMARY,第一個文件 ( Sales_
dat) 將成為主文件。
因為在 Sales_ dat 文件的 SIZE 參數中沒有指定 MB 或 KB,將使用 MB 並按 MB 分配。
Sales_ log 文件以 MB 為單位進行分配,因為 SIZE 參數中顯式聲明了
MB 後綴。
USE master;
GO
CREATE DATABASE Sales
ON
( NAME = Sales_dat,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = Sales_log,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB ) ;
GO
USE master;
GO
CREATE DATABASE Sales
ON
( NAME = Sales_dat,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\saledat.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = Sales_log,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\salelog.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB ) ;
GO
C.通過指定多個數據和事務日誌文件創建資料庫
以下示例創建資料庫 Archive,該資料庫具有三個 100-MB 數據文件和兩個 100-MB 事務日誌文件。
主文件是列表中的第一個文件,並使用 PRIMARY
關鍵字顯式指定。
事務日誌文件在 LOG ON 關鍵字後指定。
請注意用於 FILENAME 選項中各文件的擴展名: .mdf 用於主數據文件, .ndf 用於輔助數據文件, .ldf 用於事務日誌文件。
此示例將資料庫放置於 D: 驅動器上,而非 master 資料庫中。
USE master;
GO
CREATE DATABASE Archive
ON
PRIMARY
(NAME = Arch1,
FILENAME = 'D:\SalesData\archdat1.mdf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20),
( NAME = Arch2,
FILENAME = 'D:\SalesData\archdat2.ndf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20),
( NAME = Arch3,
FILENAME = 'D:\SalesData\archdat3.ndf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20)
LOG ON
(NAME = Archlog1,
FILENAME = 'D:\SalesData\archlog1.ldf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20),
(NAME = Archlog2,
FILENAME = 'D:\SalesData\archlog2.ldf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20) ;
GO
USE master;
GO
CREATE DATABASE Archive
ON
PRIMARY
(NAME = Arch1,
FILENAME = 'D:\SalesData\archdat1.mdf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20),
( NAME = Arch2,
FILENAME = 'D:\SalesData\archdat2.ndf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20),
( NAME = Arch3,
FILENAME = 'D:\SalesData\archdat3.ndf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20)
LOG ON
(NAME = Archlog1,
FILENAME = 'D:\SalesData\archlog1.ldf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20),
(NAME = Archlog2,
FILENAME = 'D:\SalesData\archlog2.ldf',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20) ;
GO
⑻ 寫出創建BBS資料庫的完整SQL語句
--寫出創建BBS資料庫的完整SQL語句
use master --選中master資料庫
go
if exists (select * from sysdatabases where name='BBS') --判斷該資料庫名是否存在
drop database BBS --如果存在就刪除該資料庫(我自己的選擇,你也可以用其他方法)
create database BBS --創建資料庫
--創建主文件
on primary
(
name='BBS_data',--主文件名
filename='d:\myBBS\BBS_data.mdf',--主文件存放地址
size=5mb,--文件初始大小
filegrowth=15%--文件的每次增長值
)
--創建日誌文件
log on
(
name='BBS_log',--日誌文件名
filename='d:\myBBS\BBS_log.ldf',--日誌文件存放地址
size=5mb,--文件初始大小
filegrowth=15%--文件的每次增長值
)
go
⑼ sql創建資料庫語句
創建資料庫的SQL語句:
create database stuDB
on primary -- 默認就屬於primary文件組,可省略
(
/*--數據文件的具體描述--*/
name='stuDB_data', -- 主數據文件的邏輯名稱
filename='D:\stuDB_data.mdf', -- 主數據文件的物理名稱
size=5mb, --主數據文件的初始大小
maxsize=100mb, -- 主數據文件增長的最大值
filegrowth=15%--主數據文件的增長率
)
log on
(
/*--日誌文件的具體描述,各參數含義同上--*/
name='stuDB_log',
filename='D:\stuDB_log.ldf',
size=2mb,
filegrowth=1mb
)
創建表和刪除表的SQL語句如下:
use StuDB
go
if exists(select * from sysobjects where name='stuMarks')
drop table stuMarks
create table stuMarks
(
ExamNo int identity(1,1) primary key,
stuNo char(6) not null,
writtenExam int not null,
LabExam int not null
)
go
-- 其中,列屬性"identity(起始值,遞增量)" 表示"ExamNo"列為自動編號, 也稱為標識列
alter table 表名
add constraint 約束名 約束類型 具體的約束說明
alter table 表名
drop constraint 約束名
alter table stuMarks
add constraint UQ_stuNo Unique(stuNo)
alter table stuMarks
drop constraint UQ_stuNo
/*--添加SQL登錄賬戶--*/
exec sp_addlogin 'xie', '123456' -- 賬戶名為xie,密碼為123456
--刪除xie賬戶名
exec sp_droplogin 'xie'
/*--在stuDB資料庫中添加兩個用戶(必須存在)--*/
use stuDB
go
exec sp_grantdbaccess 'xie','123456'
go
-- 提示:SQL Server 中的dbo用戶是具有在資料庫中執行所有活動許可權的用戶,表示資料庫的所有者(owner),一般來說,
-- 如果創建了某個資料庫,就是該資料庫的所有者,即dbo用戶,dbo用戶是一個比較特殊的資料庫用戶,無法刪除,且此用
-- 戶始終出現在每個資料庫中
/* --給資料庫用戶授權-- */
-- 授權的語法如下
-- grant 許可權 [on 表名] to 資料庫用戶
use stuDB
go
grant select,update,insert on stuMarks to xie
grant create table to xie
go
⑽ 如何用SQL語句創建資料庫
用如下語句:
create database studb
on primary -- 默認就屬於primary文件組,可省略
(
/*--數據文件的具體描述--*/
name='studb_data', -- 主數據文件的邏輯名稱
filename='d:\studb_data.mdf', -- 主數據文件的物理名稱
size=5mb, --主數據文件的初始大小
maxsize=100mb, -- 主數據文件增長的最大值
filegrowth=15%--主數據文件的增長率
)
log on
(
/*--日誌文件的具體描述,各參數含義同上--*/
name='studb_log',
filename='d:\studb_log.ldf',
size=2mb,
filegrowth=1mb
)注意:路徑和文件名等可以自己定義,而且所使用的路徑必須要先建立,否則執行語句會報錯。