数据库 创建数据库 USE master ; Go CREATE DATABASE Sales ON ( NAME = Sales_dat, FILENAME = "C:Program FilesMicr
数据库
创建数据库
USE master ;
Go
CREATE DATABASE Sales
ON
( NAME = Sales_dat,
FILENAME = "C:Program FilesMicrosoft SQL ServerMSsql13.MSSQLSERVERMSSQLDATAsaledat.mdf",
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = Sales_log,
FILENAME = "C:Program FilesMicrosoft SQL ServerMSSQL13.MSSQLSERVERMSSQLDATAsalelog.ldf",
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB ) ;
GO
查看数据库
SELECT name, database_id, create_date
FROM sys.databases ;
删除数据库
DROP DATABASE Sales;
表
创建表
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
);
删除表
DROP TABLE dbo.PurchaseOrderDetail;
重命名表
EXEC sp_rename "Sales.SalesTerritory", "SalesTerr";
列
添加列
ALTER TABLE dbo.doc_exa ADD column_b VARCHAR(20) NULL, column_c INT NULL ;
删除列
ALTER TABLE dbo.doc_exb DROP COLUMN column_b;
重命名列
EXEC sp_rename "Sales.SalesTerritory.TerritoryID", "TerrID", "COLUMN";
约束
主键
--在现有表中创建主键
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
删除视图
DROP VIEW V_EmployeeHireDate;
存储过程
创建存储过程
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
删除存储过程
DROP PROCEDURE P_UspGetEmployeesTest;
执行存储过程
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
重命名存储过程
EXEC sp_rename "P_UspGetAllEmployeesTest", "P_UspEveryEmployeeTest2";
带有输出参数的存储过程
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
GO
--调用
DECLARE @SalesYTDBySalesPerson money;
EXECUTE P_UspGetEmployeeSalesYTD
N"Blythe",
@SalesYTD = @SalesYTDBySalesPerson OUTPUT;
GO
数据类型
--结束END--
本文标题: Sql Server数据库常用Transact-SQL脚本
本文链接: https://www.lsjlt.com/news/2841.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-24
2024-04-24
2024-04-24
2024-04-24
2024-04-24
2024-04-24
2024-04-24
2024-04-24
2024-04-24
2024-04-24
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0