Sql Server数据库常用Transact-SQL脚本的示例分析
这篇文章主要介绍了Sql Server数据库常用Transact-SQL脚本的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
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、创建数据库
USEmaster;GOCREATEDATABASESalesON(NAME=Sales_dat,FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL13.MSSQLSERVER\MSSQL\DATA\saledat.mdf',SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOGON(NAME=Sales_log,FILENAME='C:\ProgramFiles\MicrosoftSQLServer\MSSQL13.MSSQLSERVER\MSSQL\DATA\salelog.ldf',SIZE=5MB,MAXSIZE=25MB,FILEGROWTH=5MB);GO
2、查看数据库
SELECTname,database_id,create_dateFROMsys.databases;
3、删除数据库
DROPDATABASESales;
表
1、创建表
CREATETABLEPurchaseOrderDetail(IDuniqueidentifierNOTNULL,LineNumbersmallintNOTNULL,ProductIDintNULL,UnitPricemoneyNULL,OrderQtysmallintNULL,ReceivedQtyfloatNULL,RejectedQtyfloatNULL,DueDatedatetimeNULL);
2、删除表
DROPTABLEdbo.PurchaseOrderDetail;
3、重命名表
EXECsp_rename'Sales.SalesTerritory','SalesTerr';
列
1、添加列
ALTERTABLEdbo.doc_exaADDcolumn_bVARCHAR(20)NULL,column_cINTNULL;
2、删除列
ALTERTABLEdbo.doc_exbDROPCOLUMNcolumn_b;
3、重命名列
EXECsp_rename'Sales.SalesTerritory.TerritoryID','TerrID','COLUMN';
约束
1、主键
--在现有表中创建主键ALTERTABLEProduction.TransactionHistoryArchiveADDCONSTRAINTPK_TransactionHistoryArchive_TransactionIDPRIMARYKEYCLUSTERED(TransactionID);--在新表中创建主键CREATETABLEProduction.TransactionHistoryArchive1(TransactionIDintIDENTITY(1,1)NOTNULL,CONSTRAINTPK_TransactionHistoryArchive_TransactionIDPRIMARYKEYCLUSTERED(TransactionID));--查看主键SELECTnameFROMsys.key_constraintsWHEREtype='PK'ANDOBJECT_NAME(parent_object_id)=N'TransactionHistoryArchive';GO--删除主键ALTERTABLEProduction.TransactionHistoryArchiveDROPCONSTRAINTPK_TransactionHistoryArchive_TransactionID;GO
视图
1、创建视图
CREATEVIEWV_EmployeeHireDateASSELECTp.FirstName,p.LastName,e.HireDateFROMHumanResources.EmployeeASeJOINPerson.PersonASpONe.BusinessEntityID=p.BusinessEntityID;GO
2、删除视图
DROPVIEWV_EmployeeHireDate;
存储过程
1、创建存储过程
CREATEPROCEDUREP_UspGetEmployeesTest@LastNamenvarchar(50),@FirstNamenvarchar(50)ASSELECTFirstName,LastName,DepartmentFROMHumanResources.vEmployeeDepartmentHistoryWHEREFirstName=@FirstNameANDLastName=@LastNameANDEndDateISNULL;GO
2、删除存储过程
DROPPROCEDUREP_UspGetEmployeesTest;
3、执行存储过程
EXECP_UspGetEmployeesTestN'Ackerman',N'Pilar';--OrEXECP_UspGetEmployeesTest@LastName=N'Ackerman',@FirstName=N'Pilar';GO--OrEXECUTEP_UspGetEmployeesTest@FirstName=N'Pilar',@LastName=N'Ackerman';GO
4、重命名存储过程
EXECsp_rename'P_UspGetAllEmployeesTest','P_UspEveryEmployeeTest2';
5、带有输出参数的存储过程
CREATEPROCEDUREP_UspGetEmployeeSalesYTD@SalesPersonnvarchar(50),@SalesYTDmoneyOUTPUTASSELECT@SalesYTD=SalesYTDFROMSalesPersonASspJOINvEmployeeASeONe.BusinessEntityID=sp.BusinessEntityIDWHERELastName=@SalesPerson;RETURNGO--调用DECLARE@SalesYTDBySalesPersonmoney;EXECUTEP_UspGetEmployeeSalesYTDN'Blythe',@SalesYTD=@SalesYTDBySalesPersonOUTPUT;GO
数据类型
感谢你能够认真阅读完这篇文章,希望小编分享的“Sql Server数据库常用Transact-SQL脚本的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。