
SQL
hyunbar
这个作者很懒,什么都没留下…
展开
-
SQL游标
Sql游标原创 2017-07-25 16:08:35 · 312 阅读 · 0 评论 -
数据库SQL Server性能优化之主键选择总结
常见的数据库主键选取方式有: ●自动增长字段 ●Uniqueidentifier ●“COMB(Combine)”类型 1、自动增长字段 优点: (1)简单、效率高。 缺点: (1)自增一般使用int型,有数据条数的限制。 (2)在数据库进行数据合并时会比较麻烦。 2、GUID 优...翻译 2018-02-24 22:17:44 · 1556 阅读 · 0 评论 -
provider 共享内存提供程序 error 0 管道的另一端上无任何进程
用户 ‘sa’ 登录失败。该用户与可信 SQL Server 连接无关联。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 用户 ‘sa’ 登录失败。该用户与可信 SQL Server 连接无关联。说明: 执行当前 We...翻译 2018-03-11 17:12:36 · 11302 阅读 · 1 评论 -
数据库SQL Server性能优化之垂直拆分和水平拆分总结
将存放在同一个数据库中的数据分散存放到多个数据库上,实现分布存储,通过路由规则路由访问特定的数据库 这样一来每次访问面对的就不是单台服务器了,而是N台服务器,这样就可以降低单台机器的负载压力。 sqlserver 2005版本之后,可以友好的支持“表分区”。 垂直(纵向)拆分:是指按功能模块拆分,比如分为订单库、商品库、用户库…这种方式多个数据库之间的表结构不同。 优点: ...翻译 2018-02-24 22:51:44 · 3483 阅读 · 0 评论 -
SQL分组取每组前一(或几)条记录(排名)
USE [Test]GO/****** Object: Table [dbo].[scores] Script Date: 2018/3/11 17:59:15 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE [dbo].[scores]( ...原创 2018-03-11 18:05:52 · 8134 阅读 · 0 评论 -
经典SQL面试题
一 、--1.学生表Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别--2.课程表 Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号--3.教师表 Teacher(T#,Tname) --T# 教师编号,Tname 教师姓名--4.成绩表 ...翻译 2018-03-11 20:18:48 · 10210 阅读 · 2 评论 -
Sql索引详解
一、聚集索引与非聚集索引:1、聚集索引: 聚集索引的意思可以理解为顺序排列,比如一个主键自增的表即为聚集索引,即id为1的存在于第一条,id为2的存在于第二条…假使数据库中是使用数组来存放的这张表中的数据,那么如果我需要查找第100条,那么直接第一条数据的地址加上100即为第一百条的地址,一次就能查询出来。 因为数据库中的数据只能按照一个顺序进行排列,所以聚集索引一个数据库只能有一...转载 2018-03-05 22:16:58 · 271 阅读 · 0 评论 -
Sql面试题--概念
(一)什么是存储过程?有哪些优缺点?存储过程是一些预编译的SQL语句。更加直白的理解:存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。存储过程是一个预编译的代码块,执行效率比较高 一个存储过程替代大量T_SQL语句 ,可以降低网...翻译 2018-05-14 21:23:07 · 977 阅读 · 0 评论 -
sql 事务(Transaction)
事务(Transaction)是并发控制的基本单位。所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转账工作:从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。所以,应该把它们看成一个事务。事务是数据库维护数据一致性的单位,在每个事务结束时,都能保持数据一致性。针对上面的描述可以看出,事务的提出主要是为了解决并发情况...转载 2018-05-14 21:30:53 · 21331 阅读 · 0 评论 -
sql 乐观锁与悲观锁
在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想。其实不仅仅是数据库系统中有乐观锁和悲观锁的概念,像memcache、hibernate、t...转载 2018-05-14 21:38:20 · 4098 阅读 · 0 评论 -
sql drop、truncate和delete的区别
(1)DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作。TRUNCATE TABLE 则一次性地从表中删除所有的数据并不把单独的删除操作记录记入日志保存,删除行是不能恢复的。并且在删除的过程中不会激活与表有关的删除触发器。执行速度快。(2)表和索引所占空间。当表被TRUNCATE 后,这个表和索引所占用的空间会恢复...转载 2018-05-14 21:42:12 · 1231 阅读 · 0 评论 -
Sql面试题
(1)、已知一个表的结构为:姓名 科目 成绩张三 语文 20张三 数学 30张三 英语 50李四 语文 70李四 数学 60李四 英语 901.怎样通过select语句把他变成以下结构:姓名 语文成绩 数学成绩 英语成绩张三 20 30 50李四 70 60 90...原创 2018-05-14 22:32:57 · 2588 阅读 · 0 评论 -
sql varchar和Nvarchar区别
Unicode字符集就是为了解决字符集这种不兼容的问题而产生的,它所有的字符都用两个字节表示,即英文字符也是用两个字节表示如果还为了这个纠结,就直接看看后面的解说,做决定吧。一般如果用到中文或者其它特殊字符,我就会使用n开头的类型,否则的话直接使用var开头的。sql server中的varchar和Nvarchar有什么区别?答: varchar(n) 长度为 n 个字节的可...转载 2018-05-14 22:47:48 · 276 阅读 · 0 评论 -
navicat 连接 mysql 出现Client does not support authentication protocol requested by server
安装navicat 和 mysql,结果最后在navicat中连接mysql时,出现了如下错误提示:Client does not support authentication protocol requested by server; consider upgrading MySQL client解决方法:USE mysql; ALTER USER ‘root’@’localh...原创 2018-07-22 20:12:52 · 342 阅读 · 0 评论 -
数据库SQL Server性能优化之ADO.NET代码总结
一、资源释放在客户端代码中,创建一个数据库连接,它需要占用一定的系统资源,当操作完毕之后我们需要释放占用的系统资源,当然,我们可以手动释放资源,具体实现如下:var conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SQLCONN1"].ToString());conn.Open();//// Thi...翻译 2018-02-24 22:01:27 · 264 阅读 · 0 评论 -
数据库SQL Server性能优化之SQL语句总结
1、不要使用select * 在select中指定所需要的列,将带来的好处: (1)减少内存耗费和网络的带宽 (2)更安全 (3)给查询优化器机会从索引读取所有需要的列2、in 和 not in 要慎用,否则会导致全表扫描如:select id from t where num in(1,2,3)3、对于连续的数值,能用 between 就不要用 insele...翻译 2018-02-24 21:40:01 · 1956 阅读 · 0 评论 -
SQL server 触发器示例
概念触发器是一种特殊类型的存储过程,不由用户直接调用。创建触发器时会对其进行定义,以便在对特定表或列作特定类型的数据修改时执行。触发器可以查询其他表,而且可以包含复杂的 SQL 语句。 它们主要用于强制服从复杂的业务规则或要求。 例如,您可以根据客户当前的帐户状态,控制是否允许插入新订单。 触发器也可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在这些表之间所定义的关系。...原创 2018-02-10 22:16:02 · 757 阅读 · 0 评论 -
SQL内置函数STUFF()加REOLACE()代替循环
SQL中代替循环的小技巧原创 2017-07-25 16:36:10 · 648 阅读 · 3 评论 -
SQL CONVERT() 函数
语法CONVERT(data_type(length),data_to_be_converted,style)data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式 可以使用的 style 值:Style ID Style 格式100 或者 0 mon dd yyyy原创 2017-08-10 13:54:43 · 1964 阅读 · 0 评论 -
SQL DATEPART()函数
DATEPART ( datepart , date ) 参数 datepart 是将为其返回 integer 的 date(日期或时间值)的一部分。下表列出了所有有效的 datepart 参数。用户定义的变量等效项是无效的。 *下表列出了所有 datepart 参数以及 SELECT DATEPART(datepart,’2007-10-30 12:15:32.1234567 +05:原创 2017-08-10 14:15:00 · 7996 阅读 · 0 评论 -
SQL DATEADD() 函数
语法DATEADD(datepart,number,date)date 参数是合法的日期表达式。number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。datepart 参数可以是下列的值:datepart 缩写年 yy, yyyy季度 qq, q月 mm, m年中的日 dy, y原创 2017-08-10 17:34:34 · 19802 阅读 · 0 评论 -
SQL查询
sql server 数表:select count(1) from sysobjects where xtype='U'数视图:select count(1) from sysobjects where xtype='V'数存储过程select count(1) from sysobjects where xtype='P' SELECT * FROM sysobjects WHERE原创 2017-08-30 17:27:35 · 283 阅读 · 0 评论 -
批量执行SQL脚本
1.先要 xp_cmdshell 这个东东给打开,打开方法如下:sp_configure 'show advanced options',1reconfiguregosp_configure 'xp_cmdshell',1reconfigurego测试就这样 exec master.dbo.xp_cmdshell 'dir d:\'2.我们做一个分隔函数,如下:ALTER FUNCTION原创 2017-09-28 14:56:59 · 1315 阅读 · 0 评论 -
最全的 SqlHelper 类
public sealed partial class SqlHelper{ /// <summary> /// 数据库连接字符串 /// </summary> public string ConnectionString { get; set; } /// <summary> /// 初始化SqlHelper实例 /// </summary转载 2017-10-17 16:53:11 · 3256 阅读 · 0 评论 -
从数据库取得数据
DataSet ds = new DataSet();SqlConnection conn = new SqlConnection(ConnectionString);//ProcedureString sql = @"Proc_GetStudent";SqlParameter Parameter1 = new SqlParameter("ID", id);SqlParameter Par原创 2017-10-19 10:50:16 · 247 阅读 · 0 评论 -
SQL 高效分页(百万条数据)ROW_NUMBER() OVER (ORDER BY id) | 分页
第一种方法:效率最高[sql] view plain copySELECT TOP 页大小 * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM table1 ) as A WHERE RowNumber > 页大小*(当前页-1) --注解:首先利转载 2017-10-31 10:58:33 · 4806 阅读 · 2 评论 -
MySql数据库面试
Part2:经典题目1、MySQL的复制原理以及流程基本原理流程,3个线程以及之间的关联;2、MySQL中myisam与innodb的区别,至少5点(1)、问5点不同;(2)、innodb引擎的4大特性(3)、2者selectcount(*)哪个更快,为什么3、MySQL中varchar与char的区别以及varchar(50)中的50代表的涵义(1)、varchar与char的区别(转载 2017-11-03 16:10:10 · 550 阅读 · 0 评论 -
SQL Server 事务示例
事务机制:1.四个属性 原子性Atomicity,一致性Consistency,隔离性Isolation,持久性Durability ,即ACID特性。2.事务的状态活动状态(初始状态),部分提交状态(事务执行完最后一条语句,实际输出可能临时驻留在内存中),提交状态(当数据库系统将事务中对数据的梗概完全写入磁盘时,写入事务日子一条信息),失败状态(事务不能正常执行...原创 2018-02-10 17:23:26 · 537 阅读 · 0 评论 -
数据据库索引,到底是什么做的?
问题1. 数据库为什么要设计索引?图书馆存了1000W本图书,要从中找到《架构师之路》,一本本查,要查到什么时候去?于是,图书管理员设计了一套规则:(1)一楼放历史类,二楼放文学类,三楼放IT类…(2)IT类,又分软件类,硬件类…(3)软件类,又按照书名音序排序…以便快速找到一本书。与之类比,数据库存储了1000W条数据,要从中找到name=”shenjian”的记录,一条条查,...转载 2018-09-19 13:39:08 · 1160 阅读 · 1 评论