Skip to content

Commit

Permalink
Add Projects
Browse files Browse the repository at this point in the history
Level3
  • Loading branch information
AmirChabok committed Nov 22, 2016
1 parent 0db679b commit 0342f60
Show file tree
Hide file tree
Showing 43 changed files with 3,877 additions and 0 deletions.
Binary file added Session03/1.SBS2012_DataBase.rar
Binary file not shown.
4 changes: 4 additions & 0 deletions Session03/1.SBS2012_DataBase/1.CreateDataBase.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Create DataBase SQL2012SBS
Go
Create DataBase SQL2012SBSFS
Go
33 changes: 33 additions & 0 deletions Session03/1.SBS2012_DataBase/10.Check.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
USE SQL2012SBS
GO

DROP TABLE Products.Product
GO

CREATE TABLE Products.Product
(ProductID INT IDENTITY(1,1),
ProductName VARCHAR(50) NOT NULL,
ProductCost MONEY NOT NULL CHECK (ProductCost > 0),
ListPrice MONEY NOT NULL CHECK (ListPrice > 0),
ProductMargin AS (ListPrice - ProductCost),
ProductDescription XML NULL,
CONSTRAINT pk_product PRIMARY KEY (ProductID))
GO

ALTER TABLE Orders.OrderHeader WITH CHECK
ADD CONSTRAINT ck_subtotal CHECK (SubTotal > 0)

ALTER TABLE Orders.OrderHeader WITH CHECK
ADD CONSTRAINT ck_taxamount CHECK (TaxAmount >= 0)

ALTER TABLE Orders.OrderHeader WITH CHECK
ADD CONSTRAINT ck_shippingamount CHECK (ShippingAmount >= 0)
GO

ALTER TABLE Orders.OrderDetail WITH CHECK
ADD CONSTRAINT ck_quantity CHECK (Quantity >= 0)
GO

ALTER TABLE Orders.OrderDetail WITH CHECK
ADD CONSTRAINT ck_unitprice CHECK (UnitPrice > 0)
GO
21 changes: 21 additions & 0 deletions Session03/1.SBS2012_DataBase/11.Foreign.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
USE SQL2012SBS
GO

CREATE TABLE LookupTables.Country
(CountryID INT IDENTITY(1,1),
CountryName VARCHAR(70) NOT NULL UNIQUE,
CONSTRAINT pk_country PRIMARY KEY(CountryID))
GO

CREATE TABLE LookupTables.StateProvince
(StateProvinceID INT IDENTITY(1,1),
CountryID INT NOT NULL,
StateProvince VARCHAR(50) NOT NULL UNIQUE,
StateProvinceAbbrev CHAR(2) NOT NULL,
CONSTRAINT pk_stateprovince PRIMARY KEY(StateProvinceID))
GO

ALTER TABLE LookupTables.StateProvince
ADD CONSTRAINT fk_countrytostateprovince FOREIGN KEY (CountryID)
REFERENCES LookupTables.Country(CountryID)
GO
28 changes: 28 additions & 0 deletions Session03/1.SBS2012_DataBase/12.Default.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
USE SQL2012SBS
GO

DROP TABLE Customers.Customer
GO

CREATE TABLE Customers.Customer
(CustomerID INT IDENTITY(1,1),
CompanyName VARCHAR(50) NULL,
FirstName VARCHAR(50) NULL,
LastName VARCHAR(50) NULL,
ModifiedDate DATE NOT NULL CONSTRAINT df_modifieddate DEFAULT GETDATE(),
CONSTRAINT pk_customer PRIMARY KEY (CustomerID))
GO

DROP TABLE Orders.OrderHeader
GO

CREATE TABLE Orders.OrderHeader
(OrderID INT IDENTITY(1,1),
OrderDate DATE NOT NULL CONSTRAINT df_orderdate DEFAULT GETDATE(),
SubTotal MONEY NOT NULL CONSTRAINT ck_subtotal CHECK (SubTotal > 0),
TaxAmount MONEY NOT NULL CONSTRAINT ck_taxamount CHECK (TaxAmount >= 0),
ShippingAmount MONEY NOT NULL CONSTRAINT ck_shippingamount CHECK (ShippingAmount >= 0),
GrandTotal AS (SubTotal + TaxAmount + ShippingAmount),
FinalShipDate DATE NULL,
CONSTRAINT pk_orderheader PRIMARY KEY (OrderID))
GO
7 changes: 7 additions & 0 deletions Session03/1.SBS2012_DataBase/13.Index.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
USE SQL2012SBS
GO

CREATE INDEX idx_lastnamefirstname2 ON Customers.Customer(LastName,FirstName)
GO
CREATE NONCLUSTERED INDEX idx_city2 ON Customers.CustomerAddress(City)
GO
10 changes: 10 additions & 0 deletions Session03/1.SBS2012_DataBase/14.FulltextCatalog.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
USE SQL2012SBS
GO
CREATE FULLTEXT CATALOG ProductDescriptions
ON FILEGROUP FullTextCatalogs
GO
USE SQL2012SBSFS
GO
CREATE FULLTEXT CATALOG ProductDocuments
ON FILEGROUP FullTextCatalogs
GO
16 changes: 16 additions & 0 deletions Session03/1.SBS2012_DataBase/15.FullTextIndex.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
USE SQL2012SBS
GO
CREATE FULLTEXT INDEX ON Products.Product(ProductDescription)
KEY INDEX pk_product
ON ProductDescriptions
WITH CHANGE_TRACKING = AUTO
GO

USE SQL2012SBSFS
GO
CREATE FULLTEXT INDEX ON Products.ProductDocument
(Document TYPE COLUMN DocumentType)
KEY INDEX pk_productdocument
ON ProductDocuments
WITH CHANGE_TRACKING = AUTO
GO
14 changes: 14 additions & 0 deletions Session03/1.SBS2012_DataBase/16.FileGroups_01.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
ALTER DATABASE SQL2012SBS
ADD FILEGROUP FullTextCatalog
GO
ALTER DATABASE SQL2012SBSFS
ADD FILEGROUP FullTextCatalog
GO
ALTER DATABASE SQL2012SBS
ADD FILE (NAME = N'SQL2008SBSFT', FILENAME = N'D:\SQL2012SBSFT.ndf')
TO FILEGROUP FullTextCatalog
GO
ALTER DATABASE SQL2012SBSFS
ADD FILE (NAME = N'SQL2008SBSFSFT', FILENAME = N'D:\SQL2012SBSFSFT.ndf')
TO FILEGROUP FullTextCatalog
GO
41 changes: 41 additions & 0 deletions Session03/1.SBS2012_DataBase/17.FileGroups_02.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
USE master
GO
--ایجاد بانک اطلاعاتی تستی
CREATE DATABASE TestFileGroup
GO
USE TestFileGroup
GO
SP_HELPFILE
GO
-------------------------
--استخراج اطلاعاتی درباره فایل گروه های مربوط به بانک اطلاعاتی جاری
SP_HELPFILEGROUP
GO
SELECT * FROM sys.filegroups
GO
-------------------------
--اضافه کردن یک فایل گروه به بانک اطلاعاتی مورد نظر
ALTER DATABASE TestFileGroup ADD FILEGROUP ACCFG
GO
-------------------------
--استخراج اطلاعاتی درباره فایل گروه های مربوط به بانک اطلاعاتی جاری
SP_HELPFILEGROUP
GO
SELECT * FROM sys.filegroups
GO
-------------------------
--تخصیص یک دیتا فایل به فایل گروه مورد نظر
ALTER DATABASE TestFileGroup ADD FILE
(
NAME=Acc,FILENAME='D:\ACC.ndf',
SIZE=3MB,MAXSIZE=UNLIMITED,FILEGROWTH=10%
)TO FILEGROUP ACCFG

GO
-------------------------
--استخراج اطلاعاتی درباره فایل گروه های مربوط به بانک اطلاعاتی جاری
SP_HELPFILEGROUP
GO
SELECT * FROM sys.filegroups
GO
-------------------------
41 changes: 41 additions & 0 deletions Session03/1.SBS2012_DataBase/18.FileGroups_03.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
USE TestFileGroup
GO
-------------------------
--استخراج اطلاعاتی درباره فایل گروه های مربوط به بانک اطلاعاتی جاری
SP_HELPFILEGROUP
GO
SELECT * FROM sys.filegroups
GO
--به فایل گروه پیش فرض توجه شود
GO
/*
--تغییر فایل گروه پیش فرض
ALTER DATABASE TestFileGroup MODIFY FILEGROUP ACCFG DEFAULT
*/
-------------------------
--اگر یک جدول به صورت عادی ایجاد کنیم در فایل گروه پیش فرض ایجاد خواهد شد
CREATE TABLE Hesab
(
Code INT PRIMARY KEY,
NAME NVARCHAR(150),
HesabType TINYINT,
)
GO
--استخراج اطلاعاتی درباره جدول
SP_HELP Hesab
GO
--حذف جدول
DROP TABLE Hesab
GO
--ایجاد جدول در یک فایل گروه دلخواه
CREATE TABLE Hesab
(
Code INT PRIMARY KEY,
NAME NVARCHAR(150),
Type TINYINT,
) ON ACCFG
GO
--استخراج اطلاعاتی درباره جدول
SP_HELP Hesab
GO
-------------------------
73 changes: 73 additions & 0 deletions Session03/1.SBS2012_DataBase/19.FileGroups_04.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
USE master
GO
CREATE DATABASE SampleDB
GO
USE SampleDB
GO
SP_HELPFILE
GO
-------------------------
--استخراج اطلاعاتی درباره فایل گروه های مربوط به بانک اطلاعاتی جاری
SP_HELPFILEGROUP
SELECT * FROM sys.filegroups
GO
--قرار دارند Primary به طور پیش فرض جداول سیستمی در فایل گروه
GO
-------------------------
--ایجاد فایل گروه های مختلف
GO
--فایل گروه و دیتا فایل مربوط به سیستم حسابداری
ALTER DATABASE SampleDB ADD FILEGROUP AccFG
GO
ALTER DATABASE SampleDB ADD FILE
(
NAME=Acc_DATA,FILENAME='D:\Acc_DATA.ndf',
SIZE=4MB,MAXSIZE=1GB,FILEGROWTH=20%
)TO FILEGROUP AccFG
GO
--فایل گروه و دیتا فایل مربوط به سیستم حقوق و دستمزد
ALTER DATABASE SampleDB ADD FILEGROUP WageFG
GO
ALTER DATABASE SampleDB ADD FILE
(
NAME=Wage_DATA,FILENAME='D:\Wage_DATA.ndf',
SIZE=4MB,MAXSIZE=1GB,FILEGROWTH=20%
)TO FILEGROUP WageFG
GO

--Blob فایل گروه و دیتا فایل مربوط به
ALTER DATABASE SampleDB ADD FILEGROUP BlobFG
GO
ALTER DATABASE SampleDB ADD FILE
(
NAME=Blob_DATA,FILENAME='D:\Blob_DATA.ndf',
SIZE=4MB,MAXSIZE=1GB,FILEGROWTH=20%
)TO FILEGROUP BlobFG
GO
--استخراج اطلاعاتی درباره فایل گروه های مربوط به بانک اطلاعاتی جاری
SP_HELPFILEGROUP
SELECT * FROM sys.filegroups
GO
-------------------------
--ایجاد یک جدول در سیستم حسابداری
CREATE TABLE Hesab
(
Code INT PRIMARY KEY,
NAME NVARCHAR(150),
HesabType TINYINT,
) ON AccFG
GO
--استخراج اطلاعاتی درباره جدول
SP_HELP Hesab
GO
--ایجاد یک جدول در سیستم حقوق و دستمزد
CREATE TABLE Employees
(
Code INT PRIMARY KEY,
FirstName NVARCHAR(50),
LastName NVARCHAR(50),
Picture VARBINARY(MAX)
) ON WageFG TEXTIMAGE_ON BlobFG
GO
--استخراج اطلاعاتی درباره جدول
SP_HELP Employees
14 changes: 14 additions & 0 deletions Session03/1.SBS2012_DataBase/2.CreateDataBase.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
CREATE DATABASE SQL2012SBS ON PRIMARY
( NAME = N'SQL2012SBS', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLFULL\MSSQL\DATA\SQL2012SBS.mdf' , SIZE = 7MB , MAXSIZE = UNLIMITED, FILEGROWTH = 10% ),
FILEGROUP FG1 DEFAULT ( NAME = N'SQL2012SBSFG1_Dat1', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLFULL\MSSQL\DATA\SQL2012SBS_1.ndf' , SIZE = 2MB , MAXSIZE = UNLIMITED, FILEGROWTH = 2MB)

LOG ON
( NAME = N'SQL2012SBS_Log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLFULL\MSSQL\DATA\SQL2012SBS.ldf' , SIZE = 2MB , MAXSIZE = UNLIMITED , FILEGROWTH = 10MB )
GO
CREATE DATABASE SQL2012SBSFS ON PRIMARY
( NAME = N'SQL2012SBSFS', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLFULL\MSSQL\DATA\SQL2012SBSFS.mdf' , SIZE = 7MB , MAXSIZE = UNLIMITED, FILEGROWTH = 10% ),
FILEGROUP DocumentFileStreamGroup
( NAME = N'FileStreamDocuments', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLFULL\MSSQL\DATA\SQL2012SBSFS.ndf' )
LOG ON
( NAME = N'SQL2012SBSFS_Log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL11.SQLFULL\MSSQL\DATA\SQL2012SBSFS.ldf' , SIZE = 2MB , MAXSIZE = UNLIMITED , FILEGROWTH = 10MB )
GO
53 changes: 53 additions & 0 deletions Session03/1.SBS2012_DataBase/20.FileStream&FileTable.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
/*
--FileTables برای استفاده از ویژگی
--فعال شده باشدFileStream
*/
------------------------------------------------------------------------------
USE master
GO
-- Enabling FILESTREAM
--0=Disables FILESTREAM support for this instance.
--1=Enables FILESTREAM for Transact-SQL access.
--2=Enables FILESTREAM for Transact-SQL and Win32 streaming access.
EXEC sp_Configure filestream_access_level, 2
GO
RECONFIGURE
GO
------------------------------------------------------------------------------
CREATE DATABASE MyFileTableTest
ON PRIMARY
(
NAME = N'MyFileTableTest',
FILENAME = N'D:\FileTable\MyFileTableTest.mdf'
),
FILEGROUP FilestreamFG CONTAINS FILESTREAM
(
NAME = MyFileStreamData,
FILENAME= 'D:\FileTable\Data'
)
LOG ON
(
NAME = N'MyFileTableTest_Log',
FILENAME = N'D:\FileTable\MyFileTableTest_log.ldf'
)
WITH FILESTREAM
(
NON_TRANSACTED_ACCESS = FULL,
DIRECTORY_NAME = N'FileTable'
)
GO
------------------------------------------------------------------------------
USE MyFileTableTest
go

CREATE TABLE MyDocumentStore AS FileTable
WITH
(
FileTable_Directory = 'MyDocumentStore',
FileTable_Collate_Filename = database_default
);
GO
--SSMS بررسی در
GO
SELECT * FROM MyDocumentStore
GO
Loading

0 comments on commit 0342f60

Please sign in to comment.