sqlserver
zq爱生活爱代码
这个作者很懒,什么都没留下…
展开
-
C#调用存储过程详解(带返回值、参数输入输出等) 很全
CREATE PROCEDURE [dbo].[GetNameById] @studentid varchar(8), @studentname nvarchar(50) OUTPUTASBEGIN SELECT @studentname=studentname FROM student WHERE studentid=@studentid if @@Error<>0...转载 2020-03-15 22:53:56 · 1140 阅读 · 0 评论 -
数据库优化之字段设计原则
字段是数据库最基本的单位,其设计对性能的影响是很大的。需要注意如下:A、数据类型尽量用数字型,数字型的比较比字符型的快很多。B、数据类型尽量小,这里的尽量小是指在满足可以预见的未来需求的前提下的。C、尽量不要允许NULL,除非必要,可以用NOTNULL+DEFAULT代替。D、少用TEXT和IMAGE,二进制字段的读写是比较慢的,而且,读取的方法也不多,大部分情况下最好不用。E...原创 2020-03-15 16:46:40 · 320 阅读 · 0 评论 -
sqlserver 级联删除、级联更新
谨慎使用增加外键约束时,设置级联更新、级联删除:[ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ][ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]create table Employees( EmpId int iden...转载 2020-03-15 14:44:21 · 988 阅读 · 1 评论 -
SQLserver 计算列以及 money decimal 区别
sql server的 money 类型其实就是小数类型 decimal ,我不喜欢用它,因为有一次什么工具生成,发现它自动把money类型转换成了decimal类型了,与其让它转,还不如自己设计数据库时将货币类型字段设置为 decimal 类型不就得了,废那事干嘛! 字节数 长度(小数点前.小数点后)money 8 15位.4位decimal(19,4...转载 2020-03-15 14:10:37 · 2926 阅读 · 0 评论 -
SQLserver 触发器 简介 demo
触发器最主要的就是两个暂存表 inserted deleted注意两个暂存表都可能一次性插入多笔数据,所以想要完全保留的话,要用循环获取1.插入操作(Insert)Inserted表有数据,Deleted表无数据2.删除操作(Delete)Inserted表无数据,Deleted表有数据3.更新操作(Update)Inserted表有数据(新数据),Deleted表...原创 2020-03-12 22:09:44 · 215 阅读 · 0 评论 -
SQLserver 游标 demo
原创 2020-03-12 17:11:34 · 136 阅读 · 0 评论 -
SQLserver 自定义函数
自定义函数分为 标量函数 表值函数标量函数 返回指定类型的值表值函数 函数返回值为TABLE根据定义方式 表值函数还可以分为内嵌函数或多语句函数内嵌函数 如果returns返回的table不附带字段,那么 该函数返回的表的字段来自定义该函数select语句的字段记住 函数返回的是一个集合,用在from 后面 不需要 begin end...原创 2020-03-12 15:42:28 · 295 阅读 · 0 评论 -
Sqlserver 存储过程
简单无参的proc有一个输入参数设定 输入参数 默认值多个输入参数输出参数原创 2020-03-12 11:04:07 · 119 阅读 · 0 评论 -
SQL server 简单的 Transact_SQL
流控制语句if elsecase when 注意单独不能用,要配合select 使用第一种 第二种while 注意 while后面没有圆括号,循环体也不要圆括号break 跳出循环continue 结束当前循环,开始下一个循环 通常和 if else 搭配使用...原创 2020-03-11 22:21:19 · 92 阅读 · 0 评论 -
SQL server 索引 简介
主要分为 唯一索引 聚集索引 非聚集索引当表中有被设置为唯一的列时,SQLSERVER会自动创建一个非聚集的唯一性索引创建唯一索引create unique index index_name on tablename(columnname)创建 聚集索引create clustered index index_name ontablename(columnna...原创 2020-03-11 21:13:16 · 154 阅读 · 0 评论 -
SQL server 中经常遇到的 全局变量
@@ERROR 返回执行的上一个 Transact-SQL 语句的错误号, 如果前一个 Transact-SQL 语句执行没有错误,则返回 0。 如果发生错误的下一句正常执行,那么@@error 里面归 0感觉这个 @@ERROR不是太实用,不如 try catch @@CURSOR_ROWS 返回连接...原创 2020-03-11 21:37:42 · 167 阅读 · 0 评论 -
SQL server 使用事务 配合 异常捕获
begin trybegin transaction tcSQL 操作commit transaction tcend trybegin catchrollback transaction tcprint '捕捉到了错误,回滚'end catchgoselect * from tablename原创 2020-03-11 20:40:32 · 153 阅读 · 0 评论 -
Sqlserver 约束 简介以及操作
约束主要分为 主键约束,外键约束,唯一约束,检查约束,非空约束删除索引 alter table tablename drop constraint contraintname创建主键约束如果在建表时 id int primary key identity(1,1) 或者 constraint pjk_name primary key(id)单独添加的...原创 2020-03-11 19:52:22 · 285 阅读 · 0 评论 -
SQLserver 修改栏位名称
exec sp_rename 'tablename.columnname','newcolumnname'或者exec sp_rename 'tablename.[columnname]','newcolumnname','column'原创 2020-03-03 07:42:34 · 636 阅读 · 0 评论 -
SqlServer数据库中文乱码
可以在建立数据时指定排序规则,记得选中文简体(Chinese_PRC_CS_AI_WS);如果数据库中已经有数据,则转换 编码会失败转载 2020-01-13 08:24:34 · 904 阅读 · 1 评论 -
SQL GROUP BY
Table: Subject_SelectionSubject Semester Attendee---------------------------------ITB001 1 JohnITB001 1 BobITB001 1 MickeyITB001 2 JennyITB...原创 2019-11-20 11:21:26 · 83 阅读 · 0 评论 -
table 外键, 哪个是主表,哪个是子表 经常弄混
以下是 Oracle 的写法CONSTRAINT emp_dept_fk FOREIGN KEY table1(department_id)REFERENCES table2(department_id);table1 的 department_id 是外键table2 的 department_id 是主键那么也就是说table1 是子表...转载 2019-07-23 18:22:19 · 2798 阅读 · 2 评论 -
判断SQLSERVER中 Cursor的状态
DEALLOCATE mycursor2declare mycursor2 cursor for select * from hrswtimopen mycursor2select CURSOR_STATUS('global','mycursor2')SELECT (CASEWHEN CURSOR_STATUS('global','DD')=1 THEN ...转载 2019-07-25 09:55:50 · 857 阅读 · 0 评论 -
SQLserver 存储过程 参数 output
create proc testReturnValue(@age int,@tt varchar(10) Output)asif @age%2=0begin return set @tt= (@age%2)+1endelsebegin set @tt= @age+1endreturn @ttdeclare @ttt varchar(10)e...转载 2019-07-25 13:49:20 · 2273 阅读 · 0 评论 -
SQLServer异常捕获
转发 https://www.cnblogs.com/OliverQin/p/4994717.html/*===================================================== 相关错误消 息如下:ERROR_NUMBER() 返回错误号。ERROR_SEVERITY() 返回严重性。ERROR_STATE() 返回错误状态号。ERROR_...转载 2019-07-26 11:02:44 · 538 阅读 · 0 评论 -
有些SQLserver查询查询出来的内容都有换行符,制表符等等 粘贴到Excel后,会自动换行
char(9) 水平制表符char(10) 换行char(13) 回车char(44) 英文逗号REPLACE( REPLACE( REPLACE(f.Text, CHAR(13), ' ') ,CHAR(10),' ') ,CHAR(9),' ')转载 2019-07-23 15:35:21 · 1719 阅读 · 0 评论 -
SQLSERVER 创建索引 修改索引 删除索引
因为要准备面试了,所以准备了一下,发现有些不熟练了,而且一些操作都需要上网进行 百度下面是总结检查表的索引信息EXEC Sp_helpindex jerry_boys创建索引create unique/CLUSTERED/nonCLUSTERED index pkindex on jerry_boys(name)删除 索引drop index pkindex ...原创 2019-07-23 18:18:09 · 5131 阅读 · 0 评论