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 
SELECT name, database_id, create_date FROM sys.databases ; 
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 ); 
DROP TABLE dbo.PurchaseOrderDetail; 
EXEC sp_rename 'Sales.SalesTerritory', 'SalesTerr'; 

1、添加列

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'; 

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 
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 
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 

总结

更多相关文章

  1. 基于MQTT实现Android消息推送(Push)
  2. android ndk编译x264开源(用于android的ffmpeg中进行软编码)
  3. Android(安卓)MediaPlayer 常用方法介绍
  4. Android常用控件
  5. Android(安卓)常用RGB值以及中英文名称
  6. Android中的常用的对话框
  7. Android(安卓)ROM的创建和烧录
  8. 【【【常用的ubuntu第三方工具及android命令(自存档)】】】二
  9. Android(安卓)MediaPlayer 常用方法介绍

随机推荐

  1. Android(shape.xml)
  2. Android中导入新的jdbc出现java.lang.NoS
  3. android-RelativeLayout实现顶部、中部、
  4. Android设置字间距和行间距
  5. Android抽屉(SlidingDrawer --类似androi
  6. 《Android 群英传》 阅读笔记 第四章~第
  7. android:configChanges android:screenOr
  8. 初学Android,自动朗读TTS(五十二)
  9. Android RelativeLayout布局的相对布局
  10. 9.9、Libgdx之软键盘