随笔分类 - SQL学习
在工作过程中使用SQL时的一些技术性问题
摘要:create function dbo.F_Get_No(@No varchar(100))RETURNS bigintASBEGINWHILE PATINDEX('%[^0-9]%',@No)>0BEGINSET @No=STUFF(@No,PATINDEX('%[^0-9]%',@No),1,'') --删掉一个非数字的字符,循环结束,剩余的为数字部分ENDRETURN CONVERT(bigint,@No)END此函数可以返回某字符串中的数字部分PATINDEX函数 返回所查内容在字符串中第一次出现的索引STUFF函数 删除指定长度的
阅读全文
摘要:exec sp_addlinkedserver 'link_northsnow','','SQLOLEDB','127.0.0.1'exec sp_addlinkedsrvlogin 'link_northsnow','false',null,'sa','password'
阅读全文
摘要:有两种接口可供选择:Microsoft.Jet.OLEDB.4.0(以下简称 Jet 引擎)和Microsoft.ACE.OLEDB.12.0(以下简称 ACE 引擎)。Jet 引擎大家都很熟悉,可以访问 Office 97-2003,但不能访问 Office 2007。ACE 引擎是随 Office 2007 一起发布的数据库连接组件,既可以访问 Office 2007,也可以访问 Office 97-2003。另外:Microsoft.ACE.OLEDB.12.0 可以访问正在打开的 Excel 文件,而 Microsoft.Jet.OLEDB.4.0 是不可以的。语法举例:-->J
阅读全文
摘要:declare @t table(a int,b int) insert into @t select 12, 34 union all select 12, 56 union all select 12, 23 union all select 13, 33 union all select 14, 11 union all select 14, 15 select *,c=(select co...
阅读全文
摘要:一般來說, 俱有 identity 屬性欄位的 table 的目前值可以很容易地利用 max 函數來取得. 不過, 也很有可能 max 該筆資料已被刪除了, 所以利用 max 查找出來的結果不正確.但又若是要找出下一個 identity 的值呢? 就一定得知道漸增量 (increment) 為何了, 否則是沒有辦法計算出來的.請先參考這篇文章: SQL Server的Identity欄位使用/複製...
阅读全文
摘要:增加字段说明:EXECUTE sp_addextendedproperty N'MS_Description', '转档ID', N'user', dbo, N'table', BAS_CATEGORY_DAT, N'column', TransId;第1,3,5,7个参数固定第2个参数为具体的说明第4个参数为用户名第6个参数为表名第8个参数为字段名修改字段说明:EXECsp_updateexte...
阅读全文
摘要:mysql中随机提取数据库记录-------------------------------------------------------------------------------- select * from tablename order by rand() limit 10sqlserver中随机提取数据库记录-------------------------------------...
阅读全文
摘要:问题描述:当你把数据从其他数据库, 或者是文本文件之类的其他数据源导入到目的数据库时, 有时希望在导入的处理中, 能够实现"数据存在时更新, 不存在时导入"在之前, 一般是通过导入临时表, 然后再判断处理导入正式表的, 在SQL Server 2005中, SSIS可以在导入处理时直接完成这种处理.下面具体演示一下如何用SSIS完成这样的处理:1. 准备测试环境-- 1. 在数据库中创建下面的对象...
阅读全文
摘要:将一个目录下(可以包括子目录)结构一样的excel文件批量导入sql2005,可以用ssis来定制任务.下面用大量图片完全说明整个过程.1、建立测试excel文件,假设有a b c d四个字段,保存在f:\excel目录下并复制很多个一样的文件2、打开Microsoft Visual Studio 2005或者随sql2005安装的SQL Server Business Intelligence ...
阅读全文
摘要:SELECT [Table Name] = OBJECT_NAME(c.object_id), [ColumnName] = c.name, [Description] = ex.value FROM sys.columns c LEFT OUTER JOIN sys.extended_properties ex ON ex.major_id = c.object_id AND...
阅读全文
摘要:字符串汇总问题,在SQL Server 2000下受推荐的方式为:用户定义函数。具体处理方法及实现请参考:-----------------------------------------------------------------------------------------生成测试数据create table 表(部门 int,人员 varchar(20))insert into 表 s...
阅读全文
摘要:在指定字符中找到对应的英文大写信息CREATE function Get_StrArrayStrOfIndex(@str varchar(1024), --要分割的字符串@split varchar(10), --分隔符号@index int --取第几个元素)returns varchar(1024)asbegindeclare @location intdeclare @start intde...
阅读全文
摘要:1.--------------------------ALTER Function [dbo].[fn_LowerToUpperMoney](@num numeric(14,2)) RETURNS nvarchar(100) WITH ENCRYPTION AS BEGIN DECLARE @n_data nVARCHAR(20),@c_data nVARCHAR(100),@n_str...
阅读全文