SQL SERVER
文章平均质量分 52
SQL SERVER知识分享
slb190623
学习并快乐着。。。
展开
-
如何使用SQL SERVER的OpenQuery
如何使用SQL SERVER的OpenQuery原创 2023-09-09 22:15:15 · 2858 阅读 · 0 评论 -
SQL Server数据库如何添加mysql链接服务器(Windows系统)
SQL Server数据库如何添加mysql链接服务器(Windows系统)原创 2023-08-06 18:23:44 · 6927 阅读 · 0 评论 -
SQL Server数据库如何添加Oracle链接服务器(Windows系统)
SQL Server数据库如何添加Oracle链接服务器(Windows系统)原创 2023-08-06 17:02:22 · 4325 阅读 · 0 评论 -
SQL SERVER数据库生成数据字典并且导出方法
SQL SERVER数据库生成数据字典并且导出方法原创 2023-04-06 15:01:03 · 1869 阅读 · 0 评论 -
SQL表中数据插入
SQL表中数据插入语法 (方法调用 一一对应 顺序对应 数量对应 类型对应 )insert [into] 表名称 (字段列表) values(值列表)解析2.1 标识列,不管什么时候都不能插入数据,同时插入的值需要满足所有的约束insert into Teacher values('张三',1,1,20,5000,'1990-9-26') --Teacher表插入一条数据,标识列CId不能插入值2.1 为表的所有字段添加值,如果不指定字段列表,默认为所有字段添加值insert i原创 2020-10-22 22:55:03 · 7729 阅读 · 0 评论 -
SQL中的Having使用
SQL中的Having使用语法:select 字段名称 from 表名称 where 筛查条件 group by 分组字段列表 Having 分组后筛查 order by 排序字段列表备注:1、where 里面的字段只能是原始表里面的字段进行筛查;having是对分组后的数据进行筛查2、执行顺序:首先是where对原始表中的数据进行筛查,然后group by对筛查后的数据进行分组,然后再对分组后的数据进行筛查,再是对分组筛查后的数据进行显示,最后对显示数据进行排序一、查询每一个班级男女生人数,同原创 2020-11-16 23:28:18 · 4962 阅读 · 0 评论 -
SQL进行表更新
SQL进行表更新语法update 表名称 set 字段=值,字段=值 where 条件修改张6的CId为2 update Teacher set CId = 2 where Name = '张6'修改张9 姓名为张10,年龄修改为28,工资加1000update Teacher set Name = '张10' ,Age = '28',Salary += 1000 where Name = '张9'...原创 2020-10-22 23:21:56 · 1938 阅读 · 0 评论 -
计算今天距离2026年1月1日,还有多少年,多少月,多少天?
--定义年月日变量DECLARE @year INT, @month INT, @day INTSET @year = 0SET @month = 0SET @day = 0--求出相差多少年SET @year = DATEDIFF(DAY, GETDATE(), '2026-01-01')/365--求出相差多少月IF DATEPART(DAY, GETDATE()) > DATEPART(DAY, '2026-01-01')SET @month = DATEDIFF(MONTH,原创 2021-06-19 23:27:40 · 3746 阅读 · 0 评论 -
sql中的IF ELSE使用方法
–没有bool值,只有条件表达式–没有{},只有begin…end–可以多重,可以嵌套–如果包含的语句只有一句,那么也可不适用begin…end–if或者else里面必须有处理语句,如没有报错示例:–计算科目名称为office平均分数并输出,如果平均分数超过60分输出成绩最高的三个学生成绩,否则输出后三名学生的成绩declare @subjectName varchar(20) = 'office' --定义科目为officedeclare @subjectID varchar(10) = (原创 2022-02-09 22:39:17 · 11834 阅读 · 0 评论 -
一次性插入多条记录
一次性插入多条记录一、联合结果集union(集合运算符)的使用方法1、集合运算符是对两个集合的操作, 两个集合必须有相同的列数,列具有相同的数据类型(至少能够进行隐式类型转换),最终输出集合的列名由第一个集合的列名确定。select 100,100unionselect 100,2002、union,默认去除重复,相对默认使用了distinct;要想全部显示,使用union allselect 100,100unionselect 100,100select 100,100unio原创 2020-11-18 00:47:30 · 1374 阅读 · 0 评论 -
SQL聚合函数
聚合函数– MAX(最大值)、MIN(最小值)、AVG(平均值)、SUM(和)、COUNT(数量:记录的条数)一、MAX、MIN聚合函数使用(对任意类型进行运算) 1.查询年龄最大(最小)的学员select MAX(Birthday) from studentselect MIN(Birthday) from student2.--如果是字符串,那么就按照字符串的拼音进行排序,得到最大值和最小值select MAX(StudentName) from studentselect MIN原创 2020-11-16 22:12:13 · 234 阅读 · 0 评论 -
SQL中EXISTS的用法
比如在Northwind数据库中有一个查询为SELECT c.CustomerId,CompanyName FROM Customers cWHERE EXISTS(SELECT OrderID FROM Orders o WHERE o.CustomerID=c.CustomerID)这里面的EXISTS是如何运作呢?子查询返回的是OrderId字段,可是外面的查询要找的是CustomerID和CompanyName字段,这两个字段肯定不在OrderID里面啊,这是如何匹配的呢?EXISTS用于转载 2021-05-24 22:42:47 · 290 阅读 · 0 评论 -
SQL之事务transaction
什么是事务事务:同生共死指访问并可能更新数据库中各种数据项的一个程序执行单元(unit),也就是由多个sql语句组成,必须作为一个整体执行A C I D这些sql语句作为一个整体一起向系统提交,要么都执行,要么都不执行;事务是对有可能对表数据进行更改操作而言–增删改查,对查询没用事务特点:CUID1.原子性:事务不可以再分,事务必须是原子工作单元;对于其他数据修改,要么全部执行,要么都不执行2.一致性:事务处理后,数据需要保持某种程度的一致3.隔离性:每一个事务是独立的,不受其他事务影响4.原创 2022-02-13 16:23:51 · 1060 阅读 · 0 评论 -
SQL中的WHILE循环使用
–可以嵌套–没有{},使用begin…end–不能使用true/false,只能使用条件表达式–如果里面只有一句就可以不使用begin…and包含–可以使用continue/break示例:如果科目名称office不及格的人数超过半数(考试题出难了),则给每个人增加2分,循环加,直到不及格的人数少于一半declare @subjectName varchar(20) = 'office' --定义科目为officedeclare @subjectID varchar(10) = (select原创 2022-02-09 22:42:55 · 4865 阅读 · 0 评论 -
使用代码创建SQL约束
使用代码创建SQL约束约束的种类主键约束(primary key PK) 唯一约束(unique UQ) 检查约束(check CK) 默认值约束(default DF) 外键约束(foreign key FK)语法alter table 表名称add constraint 约束的名称(以简写作为前缀) 约束的类型 约束的说明(字段or表达式or值)使用代码创建约束 -- 1、将Id设置为主键 if exists(select * from sysobjects wh原创 2020-10-22 00:10:25 · 867 阅读 · 0 评论 -
SQL的数据类型转换
SQL的数据类型转换一、CAST ( AS <data_ type>[ length ])print '我的世界' + cast(100 as char(3))二、CONVERT (<data_ type>[ length ], , [ style])print '我的世界' + convert(char(50),getdate(),112)a、data_type为SQL Server系统定义的数据类型,用户自己定义的数据类型不能在此使用。b、length用于指定数据原创 2020-11-17 23:31:50 · 3277 阅读 · 0 评论 -
SQL的查询使用
SQL的查询使用语法select 字段名/* from 表名称 where 筛查条件查询全部select * from Teacher --查询表Teacher的全部数据查询指定的列select id,name,age from Teacher指定查询的条件,查询女老师select * from Teacher where Gender = 0为列指定中文名称,只是结果集的显示,不会改变表结构select Id as 编号,Name 姓名,年龄 = age ,原创 2020-10-28 21:24:15 · 163 阅读 · 0 评论 -
带条件的模糊查询
带条件的模糊查询一、常用的通配符%:任意个任意字符_ :任意一个字符[] :代表一个具体的范围,能够匹配其中的一个字符^ :代表取反值,再有在[]中使用才有意义in:制定一个具体的范围,可以取其中的任意值,但要求值的类型是一致,否则报错二、带条件的查询-模糊查询=号代表严格字符串匹配,如果需要她它是通配符必须使用Like关键字select * from student where name = '林%'select * from student where name like原创 2020-11-16 22:35:39 · 644 阅读 · 0 评论 -
使用Navicat连接oracle数据库时报ORA-28547错误
文章目录问题分析:问题处理第一步:查询版本第二步:官网下载第三步:覆盖配置(注意:把下载的instantclient_11_2文件夹整个复制到Navicat的环境目录里面的OCI环境)第四步:重启Navicat,连接验证问题分析:这是因为Navicat自带的oci.dll并不支持oracle11g,需要去官网下载支持的版本,重新加载环境问题处理第一步:查询版本先用你的IDEA或者别人的连接到oracle数据库(为了查询版本),查询版本SQL:select * from v$version;第原创 2022-05-16 14:22:41 · 551 阅读 · 0 评论 -
SQL创建数据库和表
** 创建数据库 **语法:create database 数据库名称on primary -- 在那个文件组上创建,默认在主文件组创建 主数据文件( -- 当它不是可以独立执行的sql语句,且是某个结构中的一句时,需要加逗号 name = '逻辑名称_data',--逻辑名一般有个后缀,数据文件_data,日志文件_log size = 初始大小, --数值,不应该包含字' '内 fileGrowth = 增长方式, maxSize = 最大容量, fileName = '全路原创 2020-10-19 23:51:36 · 661 阅读 · 0 评论 -
SQL Server游标
什么是游标结果集,结果集就是select查询之后返回的所有行数据的集合。游标则是处理结果集的一种机制吧,它可以定位到结果集中的某一行,多数据进行读写,也可以移动游标定位到你所需要的行中进行操作数据。一般复杂的存储过程,都会有游标的出现,他的用处主要有:定位到结果集中的某一行。对当前位置的数据进行读写。可以对结果集中的数据单独操作,而不是整行执行相同的操作。是面向集合的数据库管理系统和面向行的程序设计之间的桥梁。游标的分类根据游标检测结果集变化的能力和消耗资源的情况不同,SQL Serve转载 2021-05-29 12:34:01 · 330 阅读 · 0 评论 -
SQL数据库的导入和导出
SQL数据库的导入和导出一、数据库数据的导出右键要导出数据的数据库→任务→导出数据点击下一步选择数据源,默认点击下一步即可安装需要导出文件类型(此处以EXCEL为例)选择导出EXCEL文件的路径和名称原因全部导出,点击下一步选择要导出的数据表,选择下一步一直点击下一步,最后选择完成即可二、数据的导入和数据导出过程类似,不再赘述,导入需要注意标识列,对于表示列需要【启用标识列插入】...原创 2020-10-29 00:29:38 · 8565 阅读 · 0 评论 -
如何查看Navicate保存的密码
如何查看Navicate保存的密码原创 2023-02-27 16:35:44 · 690 阅读 · 0 评论 -
如何给表中字段添加注释
EXEC sp_addextendedproperty N’MS_Description’, N’注释内容’-- 注释, N’SCHEMA’, N’dbo’,N’TABLE’, N’T_EAM_ZCTransfer’–添加注释的表名, N’COLUMN’, N’ZCTRANS_DBCENTERTYPE’;–添加注释的字段名原创 2021-05-23 20:36:42 · 1747 阅读 · 0 评论 -
SQL语句入门
1、sql中只有单引号(‘’),没有双引号(“”)print '1'select 12、任何类型的值都可以用‘’ 包含print '1' + 2 --结果为3 – +号首先是一个算术运算符,只有+号两边都是字符串才是连接运算符。如果+号一边是数值类型,系统会教另一边的值做隐形类型转换,如果可以转换就转换,如果不可用就报错3、sql字符串不敏感,不敏感指的是关键字和值,对字符串大小写敏感pRINT 'aaa'select * from login where name = 'a'原创 2020-10-19 22:11:07 · 152 阅读 · 0 评论 -
SQL数学函数
SQL数学函数一、RAND()说明:生成一个0-1之间的随机函数,包含0,不包含1select rand()二、ABS()说明:返回绝对值select ABS(-100)三、CEILING()说明:获取比当前数的最小整数select ceiling(0.0001)四、FLOOR()说明:获取比当前数小的最大整数select floor(0.999999)五、POWER(numeric_expression , y)说明:幂运算numeric_expression:是精确原创 2020-11-19 17:05:47 · 941 阅读 · 0 评论 -
创建SQL数据表
创建SQL数据库表语法:create table 表名称(字段名称 字段类型 字段特征(标识符 是否空值 主键 唯一值 默认值 check约束) ,字段名称 字段类型 字段特征(标识符 是否空值 主键 唯一值 默认值 check约束))创建Teacher表 字段:Id、Name、Gender、Age、Salary、Birthdayuse TestSchool --切换TestSchool数据库if exists(select * from sysobjects where name =原创 2020-10-21 23:14:44 · 369 阅读 · 0 评论 -
SQL中的排序和分组
SQL中的排序和分组一、排序 order by语法:select 字段 from 表名称 where 筛查条件 order by 排序字段列表(顺序不能乱)desc(ace)select * from student where name like '%文%' order by name desc二、分组 group by语法:select 字段 from 表名称 where 筛查条件 group by 分组字段列表 order by 排序字段列表(顺序不能乱)desc(ace)s原创 2020-11-16 23:05:38 · 2194 阅读 · 0 评论 -
SQL数据完整性
SQL数据完整性数据完整性保证用户输入的数据保存到数据库中是正确的,在创建表的时候给表添加约束实体完整性表的每一行数据称为一个实体,实体完整性指每一行数据是唯一的,不重复的标识列:系统自动增长,永不重复主键:唯一、非空,一个表的主键只有一个唯一键:唯一、可以为空,但只能出现一次为空,一个表可以有多个唯一键域完整性域指的是字段,域完整性就是保住字段值是合理、准确的非空、数据类型、default、check约束、关系(主外键约束)自定义完整性用户自己定义的约束规则che原创 2020-10-21 23:07:34 · 2006 阅读 · 0 评论 -
区分char、varchar、nchar、nvarchar
创建测试表CharTest使用LEN和DataLength函数测试–Len(参数) --计算指定参数的字符串个数,不区分中英文–DataLength(参数)–计算指定参数的所占据字节长度。一个因为一个字节,但一个中文两个字节测试Charselect LEN(Char) from CharTest select DataLength(Char) from CharTest测试Varcharselect LEN(Varchar) from CharTestselect原创 2020-10-18 23:14:11 · 131 阅读 · 0 评论 -
SQL日期函数
SQL日期函数一、GETDATE()函数说明:取得当前的日期时间例子:SELECT GETDATE() as GETDATE结果:GETDATE2020-12-01 21:06:35.057二、DATEADD(datepart,number,date)函数说明:将指定数值添加到指定的日期部分后的日期参数说明:date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。datepart 参数可以是原创 2020-12-01 21:45:38 · 695 阅读 · 0 评论 -
QUOTED_IDENTIFIER选项设置不正确
DELETE 失败,因为下列 SET 选项的设置不正确: ‘QUOTED_IDENTIFIER’。请确保 SET 选项正确无误,可以用于计算列上的索引视图和/或索引和/或筛选的索引和/或查询通知和/或 XML 数据类型方法和/或空间索引操作。查询资料发现时因为 QUOTED_IDENTIFIER 没有开启。只需要在代码前面把QUOTED_IDENTIFIER开启即可。当手动执行时提示错误,查看错误信息见前面截图。原创 2022-09-24 14:54:21 · 1151 阅读 · 0 评论 -
SQL数据库的存错过程中output用法
output输出标识output标记一般用于存储过程中输出多个变量的过程或返回为非整数值。案例1:根据班级和性别查询学员,同时返回总人数和指定性别的人数if exists (select * from sysobjects where name = 'usp_getSInfoAndCount')drop proc usp_getSInfoAndCountgocreate proc usp_getSInfoAndCount@totalNum int output,--如果一个参数添加了outpu原创 2022-02-19 11:28:08 · 5118 阅读 · 0 评论 -
SQL关键字
SQL关键字语句功能数据操作SELECT从数据库表中检索数据行和列INSERT向数据库表添加新数据行DELETE从数据库表中删除数据行UPDATE更新数据库表中的数据数据定义CREATE TABLE创建一个数据库表DROP TABLE从数据库中删除表ALTER TABLE修改数据库表结构CREATE VIEW创建一个视图DROP VIEW从数据库中删除视图CREATE INDEX为数据库表创建一个原创 2020-10-22 21:48:39 · 448 阅读 · 0 评论 -
SQL登录失败注意事项
用户sa登录失败sa用户被禁止登录或连接服务器服务器属性只允许windows登录当sa密码忘记或者不能登录SQL,处理办法1、使用windows权限登录进去,修改sa账号的密码原创 2020-10-18 21:57:32 · 200 阅读 · 0 评论 -
SQL如何根据表注释,搜索对应的表
根据表注释,搜索对应的表SELECT DISTINCTd.name as 表名称,f.value as 注释FROMsyscolumns aLEFT JOIN systypes b ON a.xusertype= b.xusertypeINNER JOIN sysobjects d ON a.id= d.idAND d.xtype= 'U'AND d.name<> 'dtproperties'LEFT JOIN syscomments e ON a.cdefault= e.i原创 2022-05-12 11:15:58 · 502 阅读 · 0 评论 -
SQL字符串函数
SQL字符串函数一、CHARINDEX( expressionToFind , expressionToSearch [ , start_location ] )说明:查找目标字符串的起始位置expressionToFind :目标字符串,就是想要找到的字符串,最大长度为8000expressionToSearch :用于被查找的字符串start_location:开始查找的位置,为空时默认从第一位开始查找select charindex('人民','中华人民共和国')二、LEN(字串)原创 2020-11-19 11:50:41 · 652 阅读 · 0 评论 -
ROW_NUMBER() OVER函数的基本用法
基本语法ROW_NUMBER ( ) OVER ( [ PARTITION BY value_expression , ... [ n ] ] order_by_clause )通过语法可以看出 over里有两个参数, partition by 和 order by ,其中partition by是可以不写的,但是order by是必须有的。可能对order by 比较熟悉(就是按什么排序),但 partition by是什么意思呢?partition 的中文解释是:n. 划分,分开;[数转载 2021-11-24 18:27:10 · 1169 阅读 · 0 评论 -
SQL进行数据的删除
SQL进行数据的删除一、删除delete语法delete [from] 表名称 where 条件数据删除,不能删除某一列,因为删除是对记录而言2.1 删除是一条一条删除,每次删除都会将操作写入日志文件 删除效率低2.2 标识列的种子不会从重新计算删除姓名为bb的人delete from Teacher where Name = 'bb'多条件删除delete from Teacher where Age > 25 and CId = 1删除所有数据delete原创 2020-10-22 23:48:54 · 10473 阅读 · 0 评论 -
SQL Server中Alter的用法
在修改Sql Server表结构时,常用到Alter语句,把一些常用的alter语句列举如下。1:向表中添加字段Alter table [表名] add [列名] 类型2: 删除字段Alter table [表名] drop column [列名]3: 修改表中字段类型 (可以修改列的类型,是否为空)Alter table [表名] alter column [列名] 类型4:添加主键Alter table [表名] add constraint [ 约束名] primary key(原创 2021-05-23 20:24:19 · 10339 阅读 · 0 评论