-
使用FORFILES命令来删除SQLServer备份的批处理
虽然有很多种方式可以解决这个问题,但是我们可以用T-SQL代码来处理这个文件删除过程。我用xp_cmdshell命令和FORFILES命令来处理类似于你所列出的过程...
数据库操作教程 2022-09-23 17:16:55 -
SQLServer中通过reverse取某个最后一次出现的符号后面的内容(字符串反转)
sql语句复制代码代码如下:reverse(substring(reverse(Path),1,charindex('/',reverse(Path))-1))SQL如何取出一个字符串中最后一个特殊字符右边的字符,例如:10*20*300,怎样得到300?使用reverse配合charindex来实现。reverse是把字符串倒置,然后通过charindex来获取倒置之后第一个*的位置,然后使用substring函数进行字符串截取,截取后再使用reverse倒置回来即可...
数据库操作教程 2022-09-23 17:16:39 -
INSERTINTOSELECT语句与SELECTINTOFROM语句的一些区别
1.INSERTINTOSELECT语句语句形式为:InsertintoTable2(field1,field2,...)selectvalue1,value2,...fromTable1要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。示例如下:INSERTINTOSELECT语句复制表数据复制代码代码如下:--1.创建测试表createTABLETable1(avarchar(10),bvarchar(10),cvarchar(10),CONSTRAINT[PK_Table1]PRIMARYKEYCLUSTERED(aASC))ON[PRIMARY]createTABLETable2(avarchar(10),cvarchar(10),dint,CONSTRAINT[PK_Table2]PRIMARYKEYCLUSTERED(aASC))ON[PRIMARY]GO--2.创建测试数据InsertintoTable1values('赵','asds','90')InsertintoTable1values('钱'...
数据库操作教程 2022-09-23 17:16:32 -
SQLSERVER与ACCESS、EXCEL的数据转换方法分享
在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET函数,关于函数的详细说明,请参考SQL联机帮助。利用下述方法,可以十分容易地实现SQLSERVER、ACCESS、EXCEL数据转换,详细说明如下:一、SQLSERVER和ACCESS的数据导入导出常规的数据导入导出:使用DTS向导迁移你的Access数据到SQLServer,你可以使用这些步骤:1在SQLSERVER企业管理器中的Tools(工具)菜单上,选择DataTransformation2Services(数据转换服务),然后选择czdImportData(导入数据)...
数据库操作教程 2022-09-23 17:14:20 -
sql分类汇总及Select的自增长脚本
如图:其中Num是自增长列,Operation是分类标签,count是汇总数据脚本如下:复制代码代码如下:selectNum=row_number()OVER(orderBYHT_Resv.OperationStatus),HT_Resv...
数据库操作教程 2022-09-23 17:14:20 -
将mater库中的系统存储过程批量生成*.sql文件通用且非常实用
大家都知道系统存储过程是无法用工具导出的(大家可以试试>任务>生成SQL脚本)因为系统存储过程一般是不让开发人员修改的。需要知识:1、xp_cmdshell命令的使用2、sp_MS_marksystemobject标记系统存储过程的方法3、dos命令,如type,>>等4、bcp命令的使用复制代码代码如下:usemastergoifOBJECT_ID('pr_procToSql')isnotnulldropprocpr_procToSqlgocreateprocpr_procToSql(@服务器名varchar(100),@用户名varchar(100),@密码varchar(100),@pathvarchar(200),@databasevarchar(200),@sysprocint='0'--是否标记为系统函数1:是,0:否,@proc_namevarchar(100)=''--默认是所有,可以模糊搜索,@savetypevarchar(200)='.sql'--默认保存为sql脚本)as/*版本:v1作者:达摩日期:2012-04-13功能:1将mast...
数据库操作教程 2022-09-23 17:13:58 -
SqlServer参数化查询之wherein和like实现之xml和DataTable传参介绍
方案5使用xml参数对sqlserverxml类型参数不熟悉的童鞋需要先了解下XQuery概念,这里简单提下XQuery是用来从XML文档查找和提取元素及属性的语言,简单说就是用于查询xml的语言说到这就会牵着到XPath,其实XPath是XQuery的一个子集,XQuery1.0和XPath2.0共享相同的数据模型,并支持相同的函数和运算符,XPath的方法均适用于XQuery,假如您已经学习了XPath,那么学习XQuery也不会有问题。详见https://www.jb51.net/w3school/xquery/xquery_intro.htmXQuery概念了解后需要进一步了解下SqlServer对xml的支持函数,主要为query()、nodes()、exist()、value()、modify() ,详见http://msdn.microsoft.com/zh-cn/library/ms190798.aspx使用xml方式实现wherein时有两种实现方式,使用value和exist,在这里推荐使用exist方法,msdn是这样描述的:D.使用exist()方法而...
数据库操作教程 2022-09-23 17:13:30 -
PL/SQLDEVELOPER使用的一些技巧
1,登录后默认自动选中MyObjects默认情况下,PLSQLDeveloper登录后,Brower里会选择Allobjects,如果你登录的用户是dba,要展开tables目录,正常情况都需要Wait几秒钟,而选择MyObjects后响应速率则是以毫秒计算的。Tools菜单-->ObjectBrowerFilters,会打开BrowerFolders的定单窗口,把“MyObjects”设为默认即可...
数据库操作教程 2022-09-23 17:13:11 -
Sql学习第一天——SQL将变量定义为Table类型(虚拟表)
SQL将变量定义为Table类型在平时定义sql语句中的变量时通常我们定义的都是像char,varchar,nvarchar,int........,那如何让变量作为一个像虚拟表一样呢,其实很简单。基本语法:复制代码代码如下: declare@ttable(列名1列的数据类型1,列名2列的数据类型2,...............) insertinto@t(列名1,列名2,...............)values(...............)[code]或者[code] insertinto@t(列名1,列名2,...............)(select....from....)实验用表一(PeopleInfo): id name phone XC1 李某 123333333 XC2 小小 785555555例如: 复制代码代码如下: declare@ttable(idnvarchar(3),[name]nvarchar(10))insertinto@t(id,[name])(selectid,[name]fromPeopleInfowher...
数据库操作教程 2022-09-23 17:10:36 -
Sql学习第三天——SQL关于CTE(公用表达式)的递归查询使用
关于使用CTE(公用表表达式)的递归查询----SQLServer2005及以上版本 公用表表达式(CTE)具有一个重要的优点,那就是能够引用其自身,从而创建递归CTE。递归CTE是一个重复执行初始CTE以返回数据子集直到获取完整结果集的公用表表达式...
数据库操作教程 2022-09-23 17:10:05 -
将Reportingservices的RDL文件拷贝到另外一台机器时报Dataattherootlevelisinvalid的解决方法
如下图所示:单击EditCode打开Code信息如下:经查Dataattherootlevelisinvalid是XML文件的错误信息。从上图可以看出在</Report>的根元素结束符后又多了许多脚本...
数据库操作教程 2022-09-23 17:10:04 -
自动清理MSSQLServerTableCollation问题的解决方法
在一个团队项目中,没有约定好Collation,在MSSQLServer中编程就会遇到这样的问题:Cannotresolvethecollationconflictbetween"Latin1_General_CI_AS"and"SQL_Latin1_General_CP1_CI_AS"intheequaltooperation.因为编码问题,不同编码的字符串并不能直接进行比较,这种有两个解决方法,1是在query中指定用某一个collation进行比较,另外一个就是修改column的collationtype来避免这种错误。第二种方法,一个一个column改起来很累,写了个script,除了被当作constraints比如primarykey,foreignkey之外的varchar,char,nvarchar都可以统一修改成一个collation…完整sql代码:复制代码代码如下:declare@CollationNamevarchar(500);set@CollationName='SQL_Latin1_General_CP1_CI_AS'createtable#tmp(sqlS...
数据库操作教程 2022-09-23 17:07:58