Sql Server数据库常用Transact

70次阅读
没有评论

共计 3248 个字符,预计需要花费 9 分钟才能阅读完成。

这篇文章主要介绍了 Sql Server 数据库常用 Transact-SQL 脚本的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让丸趣 TV 小编带着大家一起了解一下。

Transact-SQL

Transact-SQL(又称 T-SQL),是在 Microsoft SQL Server 和 Sybase SQL Server 上的 ANSI SQL 实现,与 Oracle 的 PL/SQL 性质相近(不只是实现 ANSI SQL,也为自身数据库系统的特性提供实现支持),在 Microsoft SQL Server 和 Sybase Adaptive Server 中仍然被使用为核心的查询语言。

数据库

1、创建数据库

USE master ; 
GO 
CREATE DATABASE Sales 
ON 
( NAME = Sales_dat, 
 FILENAME =  C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\saledat.mdf , 
 SIZE = 10, 
 MAXSIZE = 50, 
 FILEGROWTH = 5 ) 
LOG ON 
( NAME = Sales_log, 
 FILENAME =  C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\salelog.ldf , 
 SIZE = 5MB, 
 MAXSIZE = 25MB, 
 FILEGROWTH = 5MB ) ; 
GO

2、查看数据库

SELECT name, database_id, create_date 
FROM sys.databases ;

3、删除数据库

DROP DATABASE Sales;

1、创建表

CREATE TABLE PurchaseOrderDetail 
( 
 ID uniqueidentifier NOT NULL 
 ,LineNumber smallint NOT NULL 
 ,ProductID int NULL 
 ,UnitPrice money NULL 
 ,OrderQty smallint NULL 
 ,ReceivedQty float NULL 
 ,RejectedQty float NULL 
 ,DueDate datetime NULL 
);

2、删除表

DROP TABLE dbo.PurchaseOrderDetail;

3、重命名表

EXEC sp_rename  Sales.SalesTerritory ,  SalesTerr

1、添加列

ALTER TABLE dbo.doc_exa ADD column_b VARCHAR(20) NULL, column_c INT NULL ;

2、删除列

ALTER TABLE dbo.doc_exb DROP COLUMN column_b;

3、重命名列

EXEC sp_rename  Sales.SalesTerritory.TerritoryID ,  TerrID ,  COLUMN

约束

1、主键

-- 在现有表中创建主键
ALTER TABLE Production.TransactionHistoryArchive
 ADD CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIMARY KEY CLUSTERED (TransactionID);
-- 在新表中创建主键
CREATE TABLE Production.TransactionHistoryArchive1
 ( TransactionID int IDENTITY (1,1) NOT NULL
 , CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIMARY KEY CLUSTERED (TransactionID)
 )
-- 查看主键  
SELECT name 
FROM sys.key_constraints 
WHERE type =  PK  AND OBJECT_NAME(parent_object_id) = N TransactionHistoryArchive  
GO 
-- 删除主键
ALTER TABLE Production.TransactionHistoryArchive 
DROP CONSTRAINT PK_TransactionHistoryArchive_TransactionID; 
GO

视图

1、创建视图

CREATE VIEW V_EmployeeHireDate 
AS 
SELECT p.FirstName, p.LastName, e.HireDate 
FROM HumanResources.Employee AS e JOIN Person.Person AS p 
ON e.BusinessEntityID = p.BusinessEntityID ; 
GO

2、删除视图

DROP VIEW V_EmployeeHireDate;

存储过程

1、创建存储过程

CREATE PROCEDURE P_UspGetEmployeesTest 
 @LastName nvarchar(50), 
 @FirstName nvarchar(50) 
AS 
 SELECT FirstName, LastName, Department 
 FROM HumanResources.vEmployeeDepartmentHistory 
 WHERE FirstName = @FirstName AND LastName = @LastName 
 AND EndDate IS NULL; 
GO

2、删除存储过程

DROP PROCEDURE P_UspGetEmployeesTest;

3、执行存储过程

EXEC P_UspGetEmployeesTest N Ackerman , N Pilar  
-- Or 
EXEC P_UspGetEmployeesTest @LastName = N Ackerman , @FirstName = N Pilar  
GO 
-- Or 
EXECUTE P_UspGetEmployeesTest @FirstName = N Pilar , @LastName = N Ackerman  
GO

4、重命名存储过程

EXEC sp_rename  P_UspGetAllEmployeesTest ,  P_UspEveryEmployeeTest2

5、带有输出参数的存储过程

CREATE PROCEDURE P_UspGetEmployeeSalesYTD 
@SalesPerson nvarchar(50), 
@SalesYTD money OUTPUT 
AS 
 SELECT @SalesYTD = SalesYTD 
 FROM SalesPerson AS sp 
 JOIN vEmployee AS e ON e.BusinessEntityID = sp.BusinessEntityID 
 WHERE LastName = @SalesPerson; 
RETURN 
DECLARE @SalesYTDBySalesPerson money; 
EXECUTE P_UspGetEmployeeSalesYTD 
 N Blythe , 
 @SalesYTD = @SalesYTDBySalesPerson OUTPUT; 
GO

数据类型

感谢你能够认真阅读完这篇文章,希望丸趣 TV 小编分享的“Sql Server 数据库常用 Transact-SQL 脚本的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持丸趣 TV,关注丸趣 TV 行业资讯频道,更多相关知识等着你来学习!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计3248字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)