-
SQL删除语句DROP、TRUNCATE、DELETE的区别
DROP:DROPTABLEtest;删除表test,并释放空间,将test删除的一干二净。TRUNCATE:TRUNCATEtest;删除表test里的内容,并释放空间,但不删除表的定义,表的结构还在...
数据库操作教程 2022-09-23 18:24:10 -
解决MybatisPlus SqlServer OFFSET 分页问题
目录问题错误源码重现找资料解决问题使用MybatisPlus连接SqlServer数据库,在分页的时候发生了如下的报错,sql语句和报错如下:Cause:com.microsoft.sqlserver.jdbc.SQLServerException:“@P0”附近有语法错误。...SQL:SELECT *FROMtb_admin OFFSET0ROWSFETCHNEXT15ROWSONLY错误源码重现依赖<!--mybatis-plus--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.1</version></dependency><!--SqlServer依赖--><dependency><groupId>com.microsoft....
数据库操作教程 2022-09-23 18:23:38 -
SQlFunction创建函数实例介绍
在SQL中系统已为我们提供了很非常丰富的函数:例:聚会函数avg,sum,count,max,min日期函数:Day,Month,Year等等 为我们日常开发节省很多时间 但是有一些特殊需求的话SQL也提供自己创建函数的功能下面举一小例子:需求:某一订单表编号,订单号,产品名称要知道某一订单号的产品名称名称之间用逗号(,)隔开如下图:我们创建一个标题函数:StrName创建过程类似创建存储过程如下:点击右键创建表值函数与标量函数从名称就可以分出来 一个返回表(集合)标题(单一)在这个小例子中因为我们只返回名字所以创建一个标量函数代码如下:CreateFUNCTION[dbo].[OrderDetailGetStrNameByOrderId](@OrderIdint)RETURNSvarchar(500)ASBEGIN--Declarethereturnvariableheredeclare@StrPassengernamevarchar(500)set@StrPassengername=''select@StrPassengername=@St...
数据库操作教程 2022-09-23 18:13:58 -
MySQL5.7createVIEWorFUNCTIONorPROCEDURE
1.视图a.CREATEALGORITHM=UNDEFINEDDEFINER=`root`@`localhost`SQLSECURITYINVOKERVIEW`sakila`.`actor_info`ASSELECT`a`.`actor_id`AS`actor_id`,`a`.`first_name`AS`first_name`,`a`.`last_name`AS`last_name`,GROUP_CONCAT(DISTINCTCONCAT(`c`.`name`,':',(SELECTGROUP_CONCAT(`f`.`title`ORDERBY`f`.`title`ASCSEPARATOR',')FROM((`sakila`.`film``f`JOIN`sakila`.`film_category``fc`ON((`f`.`film_id`=`fc`.`film_id`)))JOIN`sakila`.`film_actor``fa`ON((`f`.`film_id`=`fa`.`film_id`)))WHERE((`fc`.`category_id`=`c`.`category_id...
数据库操作教程 2022-09-23 18:13:44 -
SQLFunction自定义函数详解
目录产生背景(已经有了存储过程,为什么还要使用自定义函数)发展历史构成使用方法适用范围注意事项疑问内容产生背景(已经有了存储过程,为什么还要使用自定义函数)与存储过程的区别(存在的意义):1. 能够在select等SQL语句中直接使用自定义函数,存储过程不行。2. 自定义函数可以调用其他函数,也可以调用自己(递归)3. 可以在表列和CHECK约束中使用自定义函数来实现特殊列或约束4. 自定义函数不能有任何副作用...
数据库操作教程 2022-09-23 18:10:45 -
Sqlserver自定义函数Function使用介绍
一.FUNCTION:在sqlserver2008中有3中自定义函数:标量函数/内联表值函数/多语句表值函数,首先总结下他们语法的异同点: 同点:1.创建定义是一样的:a,CREATEFUNCTIONF_NAME(传入的参数名称传入参数的类型)b,RETURNS返回值类型c,AS异点:1.标量函数返回的是一个数据类型值,内联表值函数返回的是一个table,而多语句返回的是一个table的变量(类似前面两个的结合);2.语法的结构:标量函数和多语句函数都是要有begin,,,end,内联表值函数就没有;3.调用:标量函数要写成在dbo,function_name;标量函数,利用上篇文章写的数据表,在[T_员工信息]表中查姓名为李异峰员工的工号:USESQL_SYSTEMGOCREATEFUNCTIONF_GONGHAO(@XINGMINGNVARCHAR(5))RETURNSINTASBEGINDECLARE@GONGHAOINTSET@GONGHAO=(SELECTY.工号FROM[T_员工信息]ASYWHEREY.姓名=@XINGMING)RETURN@GONGHAOEND...
数据库操作教程 2022-09-23 18:10:22 -
SQL中STUFF用法
1、作用删除指定长度的字符,并在指定的起点处插入另一组字符。2、语法STUFF(character_expression,start,length,character_expression)3、示例以下示例在第一个字符串abcdef中删除从第2个位置(字符b)开始的三个字符,然后在删除的起始位置插入第二个字符串,从而创建并返回一个字符串SELECTSTUFF('abcdef',2,3,'ijklmn')GO下面是结果集aijklmnef4、参数character_expression一个字符数据表达式...
数据库操作教程 2022-09-23 18:07:50 -
SQLServer中避免触发镜像SUSPEND的N种方法
背景:我们在使用数据库的过程中,很多时候要追求性能,特别在处理大批量数据的时候更希望快速处理。那么对SQLSERVER而言,数据库实现大批量插入的优化方案,这里特别介绍通过大容量插入的一种方式...
数据库操作教程 2022-09-23 17:46:10 -
详解SQL中drop、delete和truncate的异同
第一:相同点: truncate和不带where子句的delete,以及drop都会删除表内的数据第二:不同点:1.truncate和delete只删除数据不删除表的结构(定义) drop语句将删除表的结构被依赖的约束(constrain)、触发器(trigger)、索引(index);依赖于该表的存储过程/函数将保留,但是变为invalid状态。2.delete语句是数据库操作语言(dml),这个操作会放到rollbacksegement中,事务提交之后才生效;如果有相应的trigger执行的时候将被触发...
数据库操作教程 2022-09-23 17:43:38 -
实例理解SQL中truncate和delete的区别
本文以一个简单实例为大家介绍了SQL中truncate和delete的区别,帮助大家理解,具体内容如下---创建表Table1IFOBJECT_ID('Table1','U')ISNOTNULLDROPTABLETable1GOCREATETABLETable1(IDINTNOTNULL,FOIDINTNOTNULL)GO--插入测试数据INSERTINTOTable1VALUES(1,101),(2,102),(3,103),(4,104)GO---创建表Table2IFOBJECT_ID('Table2','U')ISNOTNULLDROPTABLETable2GOCREATETABLETable2(FOIDINTNOTNULL)GO--插入测试数据INSERTINTOTable2VALUES(101),(102),(103),(104)GOSELECT*FROMTable1GOSELECT*FROMTable2GO在Table1表中创建触发器,当表中的数据被删除时同时删除Table2表中对应的FOIDCREATETRIGGERTG_Table1ONTable1AFTERDELET...
数据库操作教程 2022-09-23 17:42:41 -
SQLServerUPDATE语句的用法详解
SQLServerUPDATE语句用于更新数据,下面就为您详细介绍SQLServerUPDATE语句语法方面的知识,希望可以让您对SQLServerUPDATE语句有更多的了解。现实应用中数据库中的数据改动是免不了的...
数据库操作教程 2022-09-23 17:35:32 -
sql2000报错Successfullyre-openedthelocaleventlog解决方法
报错1:Unabletoreadlocaleventlog(reason:事件日志文件已在读取间更改。报错2:Successfullyre-openedthelocaleventlog-NOTE:Someeventsmayhavebeenmissed.微软解释:http://support.microsoft.com/default.aspx?scid=kb;en-us;811484解决办法:如果要防止错误日志,中出现这些消息可以使用跟踪标志2505作为启动参数要将跟踪标志2505作为SQLServer启动参数,使用以下步骤:1.企业管理器,右键单击服务器名称,依次属性...
数据库操作教程 2022-09-23 17:34:47