分割字符串函数 create function f_split(@c varchar(2000),@split varchar(2)) returns @t table(col varchar(20)) as begin while(charindex(@split,@c)<>0) begin insert @t(col) values (substring(@c,1,charindex(@split,@c)-1)) set @c = stuff(@c,1,charindex(@split,@…
-- Description: 分割字符串函数 -- SELECT * FROM dbo.Split('a,b,c,d,e,f,g',',') -- ============================================= ) , ) ) , ) ) ) AS BEGIN DECLARE @StartIndex INT --开始查找的位置 DECLARE @FindIndex INT --找到的位置 ) --找到的值 --T-SQL中字符串的查找位置是从1开始的 --开始循环查…
CREATE FUNCTION dbo.sf_DS_SplitNVarchar ( @strValues nvarchar(4000) ) RETURNS @tblStrList TABLE (id int identity(1,1),value nvarchar(4000)) AS BEGIN declare @strTmp nvarchar(4000) declare @intPos int select @strValues=ltrim(rtrim(@strValues)) while @…
1. 使用MS SQL Server 2008: 2. 数据库内容如下: insert into xuexi1 values('张三0', '数学', 98 ) insert into xuexi1 values('张三1', '数学',912 ) insert into xuexi1 values('张三2', '数学', 344 ) insert into xuexi1 values('张三3', '数学',546 ) insert into xuexi1 values('1张三4', '数…
在sql server中,取数据中前10条语句,我们可以用top 10 这样语句,但是oracle就没有这个函数,接下来介绍它们之间的区别 1.sql server 取前10语句和随机10条的语法 --测试表数据-- select * from BdsPaperItem --查询测试表的前10条语句-- * from BdsPaperItem order by Uid asc --随机查询测试表10条语句-- * from BdsPaperItem order by NEWID() 结果实例:…
大致分为两种情况:ID连续和ID不连续. 1.ID连续的情况: 2.ID不连续的情况: (1).两次对表查询,效率较低. ID from A) (2).外层查询没有对表A进行查询,效率提高. ID from A order by ID) as a order by a.ID desc (3).ROW_NUMBER()函数效率更高,SQL2005以上版本可用. 以上是自己做的笔记,学习过程中,好记性不如烂笔头,自己也记录下来,作为成长的一部分.…
在SQL Server中有时候也会遇到字符串进行分隔的需求.平时工作中常常遇到这样的需求,例如:人员数据表和人员爱好数据表,一条人员记录可以多多人员爱好记录,而往往人员和人员爱好在界面展示层要一并提交入库的,至于实现该需求我大多采用两种方式:一种方式是代码先实现一条人员记录的添加或修改时,在数据访问层针对人员还好记录的循环添加或修改:还有一种通过存储封装,代码将选中的人员爱好记录标识键以分隔符连接起来作为字符串集,在存储过程中在分割字符串集,实现批量插入(注意:所举例说明有可能不完全妥当,如果博…
本文转自:http://blog.csdn.net/sikaiyuan2008/article/details/7848926 SQL SERVER拼接字符串(字符串中有变量)对我来说是一个难点,总是忘记规律,写下来以帮助记忆. 一.拼接字符串(整个字符串不分割)步骤: 首先在字符串的前后加单引号: 字符串中的变量以'''+@para+'''在字符串中表示: 若在执行时存在类型转换错误,则应用相应的类型转换函数,对变量进行类型转换(如cast()函数). 示例均采用northwind数据库. 示…
以下所有例子均Studnet表为例: 1. len():计算字符串长度 len()用来计算字符串的长度,每个中文汉字或英文字母都为一个长度 select sname, len(sname) from student 2. lower().upper():字符串转换为大.小写 lower() 用来将一个字符串转换为小写,upper() 用来将一个字符串转换为大写 select lower('I AM A STUDENT !') select upper('i am a student !') 3.…
.NET SQL Server连接字符串句法 数据库的连接性已经发展成为应用程序开发的一个标准方面.数据库连接字符串现在已经成为每个项目的标准必备条件.我发现自己为了找到所需要的句法,经常要从另外一个应用程序中复制连接字符串或者进行一次搜索.这个在与SQL Server交互操作时更是如此,因为它有太多的连接字符串选项.现在就让我们来研究一下连接字符串的众多方面. 连接字符串 在对象实例化或者建立期间,数据库连接字符串通过属性或方法被传递到必要的对象.连接字符串的格式是一个以分号为界,划分键/值参…
MS SQL Server 数据库连接字符串详解 原地址:http://blog.csdn.net/jhhja/article/details/6096565 问题 : 超时时间已到.在从池中获取连接之前超时时间已过.出现这种情况可能是因为所有池连接都已被使用并已达到最大池大小. 解决办法 1. 在代码里面 , 把未关闭的连接关闭 2. 扩大共享池 , 方法如下 : 解决方法可以是修改连接池的连接生存期 , 因为默认值是 60 秒 , 即连接从应用程序被释放后可以在池中保存的时间. 具体操作步骤…
--SQL Server截取字符串 , Len('hello@163.com')) ,charindex('.','hello@163.com'))…
http://blog.csdn.net/jackiehome/article/details/8668121 问题 : 超时时间已到.在从池中获取连接之前超时时间已过.出现这种情况可能是因为所有池连接都已被使用并已达到最大池大小. 解决办法 1. 在代码里面 , 把未关闭的连接关闭 2. 扩大共享池 , 方法如下 :解决方法可以是修改连接池的连接生存期 , 因为默认值是 60 秒 , 即连接从应用程序被释放后可以在池中保存的时间. 具体操作步骤如下: 如果是 ODBC 的话,则可以在 ODBC…
delphi连接sql server的字符串2011-10-11 16:07 一.delphi连接sql server 放一个连接组件 ADOConnection, 其它组件TADODataSet,TADOQuery等的connection指向ADOConnection就可以了. 你可以双击ADOConnection,使用它的向导.也可以使用下面的代码 function OpenADOConn:boolean; begin result:=false; try with ADOConnectio…
有的时候需要获取SQL Server数据库连接字符串的某些部分.用正则表达式可能有点麻烦. 其实有一个比较简单的方法--使用SqlConnectionStringBuilder. var builder = new SqlConnectionStringBuilder(connectionString); var dbServer = builder.DataSource; var dbName = builder.InitialCatalog; SqlConnectionStringBuild…
有这样一个需求:表T_FUN_TASK为任务表,有字段(TASKID,TASKNAME),表T_FUN_LOGBOOK为日志表,有字段(LOGID,TASKID,LOGDATE),一个任务可持续多天,每天会记录一条日志.在查询表T_FUN_TASK时,需将任务表中的 LOGDATE 查询出来作为一列 LOGDATES显示. T_FUN_TASK T_FUN_LOGBOOK 查询结果 此结果查询方法可以用存储过程轻松实现,这里我要介绍的是sqlserver FOR XML PATH语句的应用,在S…
从SQL Server到MySQL,近百亿数据量迁移实战 狄敬超(3D) 2018-05-29 10:52:48 212 沪江成立于 2001 年,作为较早期的教育学习网站,当时技术选型范围并不大:Java 的版本是 1.2,C# 尚未诞生,MySQL 还没有被 Sun 收购,版本号是 3.23.工程师们选择了当时最合适的微软体系,并在日后的岁月里,逐步从 ASP 过度到 .net,数据库也跟随 SQL Server 进行版本升级. 十几年过去了,技术社区已经发生了天翻地覆的变化.沪江部分业务还…
SQL Server 2016五大优势挖掘企业用户数据价值 转载自:http://soft.zdnet.com.cn/software_zone/2016/0318/3074442.shtml 3月10日,微软公司在美国纽约举办了一场名为“Data Driven”的活动,正式发布了新一代SQL Server 2016, 与此同时,还附赠了两条爆炸性消息:微软将SQL Server 2016开放给linux,同时还发布了一款针对Oracle数据库的迁移工具,以及相关的迁移优惠政策. 业内对这两条消…
原文:SQL Server中bcp命令的用法以及数据批量导入导出 1.bcp命令参数解析 bcp命令有许多参数,下面给出bcp命令参数的简要解析 用法: bcp {dbtable | query} {in | out | queryout | format} 数据文件 [-m 最大错误数] [-f 格式化文件] [-e 错误文件] [-F 首行] [-L 末行] [-b 批大小] [-n 本机类型] [-c 字符类型] [-w 宽字符类型] [-N 将非文本保持为本机类型] [-V 文件格式版本…
原文:SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. 2.具备 Transact-SQL 编程经验和使用 SQL Server Management Studio 的经验. 3.熟悉或了解Microsoft SQL Server 2008中的空间数据类型. 4.具备相应(比如OGC)的GIS专业理论知识. 5.其他相关知识. 通过前面几篇文章介绍了…
sql server中如何修改视图中的数据? 我做个测试,视图的数据有标记字段时,如果是这种方式(0 as FlagState),是无法修改的 --创建视图语句 --- create view V_EdsProd_1 as as FlagState from EdsProd a left join EdsProdUnit b on a.ProdUnit = b.Uid go 查询视图的数据 --查询视图的数据--- select * from V_EdsProd_1 假如,我们要修改视图的数据(…
在sql server里,调用存储过程时,经常需要将数据拼成字符串做为参数调用存储过程,而在储存过程中分割字符串虽然简单但麻烦,封装了该函数,可以将拼串分割成内存表返回,方便使用,返回的表字段从a,b,c,d,e开始,最多支持15列 调用方式:select * from flfcp_StrSplitToTable('a,b,c|e,f,g', ',', '|') 返回结果: 调用方式:select * from flfcp_StrSplitToTable('a,b,c,e,f,g', ',',…
我相信大部分人都碰到过,处理数据的时候,字段的值是以 ',' (逗号)分隔的形式,所以我也不能避免. 然后我才知道,sql 是没有类似于 C# 和 Javascript 这种分割字符串的方法.( Split ) 所以我自己定义了一个 sql 函数(多声明表值函数),代码如下: USE [Test] GO /****** Object: UserDefinedFunction [dbo].[Split] Script Date: 2017/4/14 23:04:08 ******/ SET ANS…
一.按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果(标量值函数)   create function Func_StrArrayLength ( ), --要分割的字符串 ) --分隔符号 ) returns int as begin declare @location int declare @start int declare @length int set @str=ltrim(rtrim(@str)) set @loc…
场景: 表名:testsuer id     name 1       小红,小李,李红,小法 要结果值为: 1     小红 1     小李 1     李红 1     小法 MYSQL函数解释: substring_index(str,delim,count) 说明:substring_index(被截取字段,关键字,关键字出现的次数) JOIN:这个join最基本原理是笛卡尔积.通过这个方式来实现循环 INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录. LEF…
如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL  Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS). 在这里,我不打算介绍使用SQL  Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计.这些经验来自我过去几年中经受的教训,一直来,我看到许多同样的设计错误被一次又一次的重复. 一.了解你用的工具 不要轻视这一点,这是我在这篇文章中讲述的最关键的一…
如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS).在这里,我不打算介绍使用SQL Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计.这些经验来自我过去几年中经受的教训,一直来,我看到许多同样的设计错误被一次又一次的重复.一.了解你用的工具不要轻视这一点,这是我在这篇文章中讲述的最关键的一条.也许你…
这里记录的是c# 在vs中连接sql server数据库中的连接字符串的总结. 1.标准安全连接 Data Source = myServerAddress;Initial Catalog = myDataBase;User Id = myUsername;Password = myPassword; 使用服务器名\实例名作为连接指定SQL Server实例的数据源.如果你使用的是SQL Server 2008 Express版,实例名为SQLEXPRESS. 2.可替代的标准安全连接 Serv…
    还是工作中遇到的需求,有时候和外部的系统对接,进行数据的核对功能,外部的系统有时候主键字段列数据类是UNIQUEIDENTIFER(GUID)类型的字符串格式,去除了GUID格式中的分隔符“-”.基于上面的原因,在数据库中可能要将这类的“GUID去格式化的字符串”转化为GUID,便于和本系统的相关联数据进行来核对.   SQL Server中的字符串转化为GUID的T-SQL代码如下: IF OBJECT_ID(N'dbo.ufn_GUID', 'FN') IS NOT NULL BEG…
DB驱动程序常见的驱动程序如下: ODBC   ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口).这些API利用SQL来完成其大部分任务.ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC. OLE DB   OLE DB 是 Micr…