⑴ sql server里面生成mdf 和dacpac区别
在SQLServer数据库中主要数据文件包含数据库的启动信息,并指向数据库中的其他文件。 用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。 每个数据库有一个主要数据文件。 主要数据文件的建议文件扩展名是 .mdf。
数据层应用程序 (DAC) 是一个逻辑数据库管理实体,用于定义与用户数据库关联的所有 SQL Server 对象,如表、视图和实例对象(包括登录名)。DAC 是 SQL Server 数据库部署的一个自包含单元,它使数据层开发人员和数据库管理员能够将 SQL Server 对象打包到一个名为“DAC 包”(也称作 DACPAC)的可移植项目中。
DAC 是一种数据库生命周期管理和效率工具,可用于进行声明性数据库开发以简化部署和管理。 开发人员可以在 SQL Server Data Tools 数据库项目中创作一个数据库,然后将该数据库生成到 DACPAC 中以便提交给 DBA。 DBA 可使用 SQL Server Management Studio 将 DAC 部署到 SQL Server 或 Windows Azure SQL Database 的测试或生产实例中。 或者,DBA 可以使用 DACPAC 升级之前用 SQL Server Management Studio 部署的数据库。 若要完成生命周期,DBA 可将数据库提取到 DACPAC 中,再将其提交给开发人员以反映测试或生产调整,或进一步更改数据库设计以响应应用程序中的更改。
在SQL Server Management Studio 中可以连接以下这些:
⑵ sql server为什么不能用以DAC方式登陆(ADMIN:用户名)。
final String DRIVERNAME = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
final String DBURL = "jdbc:sqlserver://localhost:3437;databaseName=netshop";
final String DBUSER = "sa";
final String DBPWD = "123";
public Connection conn;
public ResultSet rs;
public DBConn() {
// TODO Auto-generated constructor stub
getConn();
}
public Connection getConn() {
try {
Class.forName(DRIVERNAME);
conn = DriverManager.getConnection(DBURL, DBUSER, DBPWD);
//System.out.println("ok");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("驱动未找到");
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("数据库未找到");
e.printStackTrace();
}
return conn;
}
是这个吗?
中间的那个 是电脑随机产生的,所以每次启动机器时,都要查看后再进行修改。
这么查看的:
右击我的电脑--管理---服务 --SQL2005 --查看IP端口号。。
希望有用!!!
⑶ SQL中怎样写 被包含
_ 与任意单字符匹配。% 与包含一个或多个字符的字符串匹配。[ ] 与特定范围(例如,[a-f])或特定集(例如,[abcdef])中的任意单字符匹配。[^] 与特定范围(例如,[^a-f])或特定集(例如,[^abcdef])之外的任意单字符匹配。通过这几个组合就行了
⑷ 如何建立sqlserver 外部数据库连接
Windows Vista 和 Windows Server 2008 以及更高版本
以下过程通过使用具有高级安全 Microsoft 管理控制台 (MMC) 管理单元的 Windows 防火墙来配置该 Windows 防火墙。从 Windows Vista 和 Windows Server 2003 开始提供此管理单元。高级安全 Windows 防火墙仅配置当前配置文件。有关高级安全 Windows 防火墙的详细信息,请参阅配置 Windows 防火墙以允许 SQL Server 访问。
打开 Windows 防火墙的端口以进行 TCP 访问
在“开始”菜单上,单击“运行”,键入 WF.msc,然后单击“确定”。
在“高级安全 Windows 防火墙”的左窗格中,右键单击“入站规则”,然后在操作窗格中单击“新建规则”。
在“规则类型”对话框中,选择“端口”,然后单击“下一步”。
在“协议和端口”对话框中,选择 TCP。选择“特定本地端口”,然后键入数据库引擎实例的端口号,例如默认实例的端口号 1433。单击“下一步”。
在“操作”对话框中,选择“允许连接”,然后单击“下一步”。
在“配置文件”对话框中,选择在您想要连接到数据库引擎时描述计算机连接环境的任何配置文件,然后单击“下一步”。
在“名称”对话框中,输入此规则的名称和说明,再单击“完成”。
在使用动态端口时打开对 SQL Server 的访问
在“开始”菜单上,单击“运行”,键入 WF.msc,然后单击“确定”。
在“高级安全 Windows 防火墙”的左窗格中,右键单击“入站规则”,然后在操作窗格中单击“新建规则”。
在“规则类型”对话框中,选择“程序”,然后单击“下一步”。
在“程序”对话框中,选择“此程序路径”。单击“浏览”,导航到要通过防火墙访问的 SQL Server 实例,再单击“打开”。默认情况下,SQL Server 位于 C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe。单击“下一步”。
在“操作”对话框中,选择“允许连接”,然后单击“下一步”。
在“配置文件”对话框中,选择在您想要连接到数据库引擎时描述计算机连接环境的任何配置文件,然后单击“下一步”。
在“名称”对话框中,输入此规则的名称和说明,再单击“完成”。
网络查询解决方案:
Step 1: 在服务器图标上单击右键,选择property,然后选connection,把allow remote connection选上,这一步的目的是让数据库允许远程连接。
Step 2: 在数据库服务器图标上,展开目录,找到Security下的Logins子目录树,设置SA账户的属性,改password,在status栏里,login选上enable。这一步的目的是,允许远程客户端使用sa用户邓肯,sa是system administrator的缩写,拥有数据库最高管理权限,默认状态下是禁用的。
Step3:在数据库服务器图标上右键,打开Facets选项把RemoteDacEnabled的value改成true。这一步的目的是允许建立远程专用管理员连接,此种连接拥有最高权限,即使无法建立标准连接,也可以建立DAC连接。
Step4:开启服务,打开SQL Server Configuration Tool,打开网络配置,选择TCP/IP协议,点开属性,IP地址填数据库所在服务器的IP地址,如果是本地服务器,填127.0.0.1。
⑸ 如何创建SQL Server 2008 R2管理员DAC连接
找到属于win732位的安装包 版本:出版日期:10.50.4000.02012/7/26文件名:文件大小:SQLEXPR_x86_CHS.exe117.6 MBSQLEXPR_x64_CHS.exe132.2 MBSQLEXPR32_x86_CHS.exe104.5 MBSQLEXPRADV_x64_CHS.exe1.0 GBSQLEXPRADV_x86_CHS.exe952.0 MBSQLEXPRWT_x64_CHS.exe374.8 MBSQLEXPRWT_x86_CHS.exe349.9 MBSQLManagementStudio_x64_CHS.exe182.6 MBSQLManagementStudio_x86_CHS.exe179.8 MB- 收起知识库文章: KB2630458 Microsoft SQL Server 2008 R2 Express Service Pack 2 是功能丰富的 SQL Server 免费版本,是学习、开发桌面、Web 及小型服务器应用程序并为它们提供功能的理想选择,且非常适合由 ISV 进行再分发。 SQL Server 2008 R2 SP2 Express 提供的主要功能:支持存储过程、触发器、函数和视图本机支持关系数据、XML、FILESTREAM 和空间数据,可存储所有类型的业务数据除与 SQL Server Reporting Services 中的 Microsoft 2007 Office System 集成外,还改进了性能、可用性、可视化通过利用现有的 T-SQL 技术、ADO.NET 实体框架和 LINQ 简化开发工作与 Visual Studio 和 Visual Web Developer 紧密集成SQL Server 2008 R2 SP2 Express Edition:SQL Server 2008 R2 Express with Tools支持开发的 Express 核心版本。包括 SQL Server 2008 数据库引擎和 SQL Server Management Studio ExpressSQL Server 2008 R2 Express with Advanced Services扩展 SQL Server 2008 Express with Tools 以包括对集成的全文搜索和 Reporting Services 的支持SQL Server 2008 R2 Express(仅运行时)只包括 SQL Database 引擎,是为部署和 ISV 再分发而设计的 SQL Server 2008 R2 SP2 Management Studio Express用于配置和管理 SQL Server 2008 R2 SP2 Express 的免费的、易于使用的图形管理工具。它还可以管理由 SQL Server 2008 R2 SP2 的任何版本创建的 SQL Server 数据库引擎的实例。 对于首次下载 SQL Server Express 和 SQL Server Management Studio Express 的客户,请下载上面的捆绑包:SQL Server 2008 Express with Tools。 知识库文章 2630458 提供了所有 SQL Server 版本的 SQL Server 2008 R2 SP2 中关键修复的更多信息。若要了解有关 SQL Server 2008 R2 SP2 的详情,请查阅 SQL Server 2008 R2 SP2 发行说明。 系统要求支持的操作系统Windows 7, Windows Server 2003, Windows Server 2008, Windows Server 2008 R2, Windows Vista, Windows XP系统内存:对于 SQL Server Express with Tools 和 SQL Server Express with Advanced Services,最少为 512 MB;对于随 SQL Server Express with Advanced Services 一起安装的 Reporting Services,最少为 4 GB硬盘:2.2 GB 的磁盘空间处理器:X86: Pentium III 兼容的处理器或更快(处理器速度 - 1.0 GHz 或更快)X64: 最低配置:AMD Opteron、AMD Athlon 64、支持 Intel EM64T 的 Intel Xeon、支持 EM64T 的 Intel Pentium IV(处理器速度 - 1.0 GHz 或更快)IA64: Itanium 处理器或更快(处理器速度 - 1.0 GHz 或更快)限制:SQL Server Express 支持 1 个物理处理器、1 GB 内存和 10 GB 存储量 安装说明先决条件若要安装或更新 SQL Server 2008 R2 SP2,用户必须拥有计算机的管理权限。 步骤 1:从 Microsoft 下载中心安装 Microsoft .NET Framework 2.0 或更高版本。 步骤 2:通过单击此页上的 SQLEXPR.EXE 或 SQLEXPR32.EXE 链接下载 SQL Server Express。若要立即开始安装,请单击“运行”。若要在以后安装 SQL Server Express,请单击“保存”。 注意:SQLEXPR32.EXE 是一个较小的包,只能用于在 32 位操作系统上安装 SQL Server Express。SQLEXPR.EXE 包同时支持在 32 位和 64 位(WOW 安装)操作系统上进行安装。除此以外,这些包并无任何不同之处。 步骤 3:按照自述文件中提供的安装说明进行安装。可以在 SQL Server 2008 R2 SP2 发行说明中找到已知问题。
⑹ 关于sql存储过程解密问题请教
--一个破解SQL2005的,我试过在SQl2008上也可以用
/********************************************************************/
/*英文名称:sp__windbi$decrypt*/
/*中文名称:解密SQLServer2005存储过程*/
/*功能:解密SQLServer2005存储过程*/
/*相关说明:
要用管理员专用连接DAC
一、什么是DAC
SQLServer2005为管理员提供了一种特殊的诊断连接,以供在无法与服务器建立标准连接时使用。即使在SQLServer不响应标准连接请求时,管理员也可以使用这种连接访问SQLServer,以便执行诊断查询并解决问题。命令行界面(sqlcmd)通过使用特殊的管理员开关(-A),提供并支持这种专用管理员连接(DAC)。
二、如何使用DAC登录到服务器
1本机DAC登录
命令行方式下执行sqlcmd-A-Ssql服务器名
2远程DAC登录
1)打开远程DAC选项
EXECsp_configure'remoteadminconnections',1;
RECONFIGURE;
2)登录到远程服务器
sqlcmd-A-S192.168.0.1-Usa-P123456
3登录后,可以通过查询动态管理视图来诊断问题
三、SQLServerManagementStudio与DAC配合使用
1、在SQLServerManagementStudio中,不打开其他DAC,单击工具栏上的“数据库引擎查询”。
2、在“连接到数据库引擎”对话框的“服务器名称”框中,键入ADMIN:,并在其后继续键入服务器实例的名称。例如,若要连接到名为ACCTPAYABLE的服务器实例,请键入ADMIN:ACCTPAYABLE。
3、完成“身份验证”部分(提供sysadmin组成员的凭据),然后单击“连接”。将建立连接。
如果已在使用DAC,则连接将失败,并出现错误指示无法连接。*/
/*
目前这个存储过程只能解密存储过程,
至于解密函数、触发器、视图的存储过程本网站会进一步关注,调用形式为:
execdbo.sp__windbi$decrypt@procere,0
如果第二个参数使用的话,会给出该存储过程的一些提示。
--版本.0修正存储过程过长引起的问题
警告:该存储过程会删除并重建原始的存储过程。'
在运行该存储过程之前确保你的数据库有一个备份。'
该存储过程通常应该运行在产品环境的一个备份的非产品环境下。
*/
/**********************************************************************/
print'creatingstoredproceresp__windbi$decrypt......'
go
ifexists(='sp__windbi$decrypt'andtype='P')
dropproceresp__windbi$decrypt
go
createPROCEDURE[dbo].[sp__windbi$decrypt]
(@proceresysname=NULL)
AS
SETNOCOUNTON
DECLARE@intProcSpacebigint,@tbigint,@maxColIDsmallint,@procNameLengthint
select@maxColID=max(subobjid)FROM
sys.sysobjvaluesWHEREobjid=object_id(@procere)
--select@maxColIDas'Rowsinsys.sysobjvalues'
select@procNameLength=datalength(@procere)+29
DECLARE@real_01nvarchar(max)
DECLARE@fake_01nvarchar(max)
DECLARE@fake_encrypt_01nvarchar(max)
DECLARE@real_decrypt_01nvarchar(max),@real_decrypt_01anvarchar(max)
declare@objtypevarchar(2),@parentnamenvarchar(max)
select@real_decrypt_01a=''
--提取对象的类型如是存储过程还是函数,如果是触发器,还要得到其父对象的名称
select@objtype=type,@parentname=object_name(parent_object_id)
fromsys.objectswhere[object_id]=object_id(@procere)
--从sys.sysobjvalues里提出加密的imageval记录
SET@real_01=(SELECTtop1imagevalFROMsys.sysobjvaluesWHEREobjid=
object_id(@procere)andvalclass=1orderbysubobjid)
--创建一个临时表
createtable#output([ident][int]IDENTITY(1,1)NOTNULL,
[real_decrypt]NVARCHAR(MAX))
--开始一个事务,稍后回滚
BEGINTRAN
--更改原始的存储过程,用短横线替换
if@objtype='P'
SET@fake_01='ALTERPROCEDURE'+@procere+'WITHENCRYPTIONAS
'+REPLICATE(cast('-'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)
elseif@objtype='FN'
SET@fake_01='ALTERFUNCTION'+@procere+'()
/*'+REPLICATE(cast('*'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)+'*/END'
elseif@objtype='V'
SET@fake_01='ALTERview'+@procere+'WITHENCRYPTIONASselect1ascol
/*'+REPLICATE(cast('*'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)+'*/'
elseif@objtype='TR'
SET@fake_01='ALTERtrigger'+@procere+'ON'+@parentname+'(''N'',16,10)
/*'+REPLICATE(cast('*'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)+'*/'
EXECUTE(@fake_01)
--从sys.sysobjvalues里提出加密的假的
SET@fake_encrypt_01=(SELECTtop1imagevalFROMsys.sysobjvaluesWHEREobjid=
object_id(@procere)andvalclass=1orderbysubobjid)
if@objtype='P'
SET@fake_01='CreatePROCEDURE'+@procere+'WITHENCRYPTIONAS
'+REPLICATE(cast('-'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)
elseif@objtype='FN'
SET@fake_01='CREATEFUNCTION'+@procere+'()
/*'+REPLICATE(cast('*'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)+'*/END'
elseif@objtype='V'
SET@fake_01='Createview'+@procere+'WITHENCRYPTIONASselect1ascol
/*'+REPLICATE(cast('*'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)+'*/'
elseif@objtype='TR'
SET@fake_01='Createtrigger'+@procere+'ON'+@parentname+'(''N'',16,10)
/*'+REPLICATE(cast('*'asnvarchar(max)),datalength(@real_01)/2-@procNameLength)+'*/'
--开始计数
SET@intProcSpace=1
--使用字符填充临时变量
SET@real_decrypt_01=replicate(cast('A'asnvarchar(max)),(datalength(@real_01)/2))
--循环设置每一个变量,创建真正的变量
--每次一个字节
SET@intProcSpace=1
--如有必要,遍历每个@real_xx变量并解密
WHILE@intProcSpace<=(datalength(@real_01)/2)
BEGIN
--真的和假的和加密的假的进行异或处理
SET@real_decrypt_01=stuff(@real_decrypt_01,@intProcSpace,1,
NCHAR(UNICODE(substring(@real_01,@intProcSpace,1))^
(UNICODE(substring(@fake_01,@intProcSpace,1))^
UNICODE(substring(@fake_encrypt_01,@intProcSpace,1)))))
SET@intProcSpace=@intProcSpace+1
END
--通过sp_helptext逻辑向表#output里插入变量
insert#output(real_decrypt)select@real_decrypt_01
--selectreal_decryptAS'#outputchek'from#output--测试
---------------------------------------
--开始从sp_helptext提取
---------------------------------------
declare@dbnamesysname
,@BlankSpaceAddedint
,@BasePosint
,@CurrentPosint
,@TextLengthint
,@LineIdint
,@AddOnLenint
,@LFCRint--回车换行的长度
,@DefinedLengthint
,@SyscomTextnvarchar(max)
,@Linenvarchar(255)
Select@DefinedLength=255
SELECT@BlankSpaceAdded=0--跟踪行结束的空格。注意Len函数忽略了多余的空格
CREATETABLE#CommentText
(LineIdint
,Textnvarchar(255)collatedatabase_default)
--使用#output代替sys.sysobjvalues
DECLAREms_crs_syscomCURSORLOCAL
FORSELECTreal_decryptfrom#output
ORDERBYident
FORREADONLY
--获取文本
SELECT@LFCR=2
SELECT@LineId=1
OPENms_crs_syscom
FETCHNEXTFROMms_crs_syscominto@SyscomText
WHILE@@fetch_status>=0
BEGIN
SELECT@BasePos=1
SELECT@CurrentPos=1
SELECT@TextLength=LEN(@SyscomText)
WHILE@CurrentPos!=0
BEGIN
--通过回车查找行的结束
SELECT@CurrentPos=CHARINDEX(char(13)+char(10),@SyscomText,
@BasePos)
--如果找到回车
IF@CurrentPos!=0
BEGIN
--如果@Lines的长度的新值比设置的大就插入@Lines目前的内容并继续
While(isnull(LEN(@Line),0)+@BlankSpaceAdded+
@CurrentPos-@BasePos+@LFCR)>@DefinedLength
BEGIN
SELECT@AddOnLen=@DefinedLength-(isnull(LEN(@Line),0)+
@BlankSpaceAdded)
INSERT#CommentTextVALUES
(@LineId,
isnull(@Line,N'')+isnull(SUBSTRING(@SyscomText,
@BasePos,@AddOnLen),N''))
SELECT@Line=NULL,@LineId=@LineId+1,
@BasePos=@BasePos+@AddOnLen,@BlankSpaceAdded=0
END
SELECT@Line=isnull(@Line,N'')+
isnull(SUBSTRING(@SyscomText,@BasePos,@CurrentPos-@BasePos+@LFCR),N'')
SELECT@BasePos=@CurrentPos+2
INSERT#CommentTextVALUES(@LineId,@Line)
SELECT@LineId=@LineId+1
SELECT@Line=NULL
END
ELSE
--如果回车没找到
BEGIN
IF@BasePos<=@TextLength
BEGIN
--如果@Lines长度的新值大于定义的长度
While(isnull(LEN(@Line),0)+@BlankSpaceAdded+
@TextLength-@BasePos+1)>@DefinedLength
BEGIN
SELECT@AddOnLen=@DefinedLength-
(isnull(LEN(@Line),0)+@BlankSpaceAdded)
INSERT#CommentTextVALUES
(@LineId,
isnull(@Line,N'')+isnull(SUBSTRING(@SyscomText,
@BasePos,@AddOnLen),N''))
SELECT@Line=NULL,@LineId=@LineId+1,
@BasePos=@BasePos+@AddOnLen,@BlankSpaceAdded=
0
END
SELECT@Line=isnull(@Line,N'')+
isnull(SUBSTRING(@SyscomText,@BasePos,@TextLength-@BasePos+1),N'')
ifLEN(@Line)<@DefinedLengthandcharindex('',
@SyscomText,@TextLength+1)>0
BEGIN
SELECT@Line=@Line+'',@BlankSpaceAdded=1
END
END
END
END
FETCHNEXTFROMms_crs_syscominto@SyscomText
END
IF@LineisNOTNULL
INSERT#CommentTextVALUES(@LineId,@Line)
selectTextfrom#CommentTextorderbyLineId
CLOSEms_crs_syscom
DEALLOCATEms_crs_syscom
DROPTABLE#CommentText
---------------------------------------
--结束从sp_helptext提取
---------------------------------------
--删除用短横线创建的存储过程并重建原始的存储过程
ROLLBACKTRAN
DROPTABLE#output
⑺ 什么是SQL Native Client是什么
SQL Server Native Client 是在 SQL Server 2005 中引入的用于 OLE DB 和 ODBC 的独立数据访问应用程序编程接口 (API)。 SQL Server Native Client 将 SQL OLE DB 访问接口和 SQL ODBC 驱动程序组合成一个本机动态链接库 (DLL)。 除 Windows 数据访问组件(Windows DAC,以前为 Microsoft 数据访问组件或 MDAC)提供的功能之外,它还提供新的功能。 SQL Server Native Client 可用于创建新应用程序或增强现有应用程序,使这些应用程序能够利用在 SQL Server 2005 中引入的功能,例如多个活动结果集 (MARS)、用户定义数据类型 (UDT)、查询通知、快照隔离和 XML 数据类型支持。
SQL Server Native Client 旨在提供一种使用 OLE DB 或 ODBC 获取对 SQL Server 的本机数据访问的简化方法。 简化之处在于它将 OLE DB 和 ODBC 技术组合到一个库中,并且它提供一种创新和开发新的数据访问功能而不更改当前 Windows DAC 组件(现在是 Microsoft Windows 平台的一部分)的方法。
⑻ sql server 2005怎样使用DAC管理员连接,连接本地服务器的就可以
你是用SSMS工具吗,打开工具出现登录界面时不要直接使用DAC方式进行连接,而是选择取消。然后单击“新建查询”,出现登录界面时在服务器名称前加admin:(注意不是登录名前)来登录即可。
使用sqlcmd的话,还要在-S选项后写上你的sql server的名字,一般是你的计算机名。
⑼ SQL到底可以分几种语言
DDL (Data Definition Language) 资料定义语言
DML (Data Manipulation Language)资料处理语言
DQL (Data Query Language)资料查询语言
DCL (Data Control Language)资料控制语言
DAC (Data Administration Commands)资料管理语言
TCC (Transactional control commands)交易控制指令
1. DDL:允许资料库使用者建立与重建资料库物件,如建立或更新删除表格。
DDL指令 :
(1) CREATE TABLE (建立表格,属于概念层指令)
(2) ALTER TABLE (修改表格,例如:增掩表格属性)
(3) DROP TABLE (删除表格)
(4) CREATE INDEX (建立索引表)
(5) ALTER INDEX
(6) DROP INDEX
(7) CREATE VIEW (产生景观,属于外部纲目指令)
(8) ALTER VIEW
(9) DROP VIEW
2. DML:用来插入、更新及删除关联式资料库的资料,DML有三个主要指令:insert、 delete、update。
3. DQL:允许资料库使用者查询资料库中相关的资料。DQL只有一个select指令,这里的select指令与关联式代数的“选择”指令意义并不同。
4. DCL:DCL控制使用者对资料库内容的存取权限。主要指令有:REVOKE删除权限、ALTER PASSWORD、GRANT授与权限、SYNONYM。
5. DAC:允许使用者对使用中的资料库产生稽核与分析,共有两种主要指令:START AUDIT、STOP AUDIT。
6. TCC:用来管理资料的交易。
以下为主要指令:
(1) COMMIT:确认资料库的交易。交易一旦确认就永久有效。
(2) ROLLBACK:回复资料库的交易。使交易回到未被确认状态。
(3) SAVEPOINT:设立群组内交易的指标。
(4) SET TRANSACTION:为每一次交易命名。
COMMIT、ROLLBACK、SAVEPOINT只能与DML的insert、delete、update指令一起使用。