
SQL SERVER
文章平均质量分 58
sz_bdqn
沉默,内向,专心,刻苦,负责,好学....
展开
-
SQl 语句是Excel中的数据导入到SQL Service数据库中
//第一步: //启用Ad Hoc Distributed Queries: exec sp_configure show advanced options,1reconfigureexec sp_configure Ad Hoc Distributed Queries,1reconfigurego//第二步: SELECT * into原创 2008-08-05 01:06:00 · 1375 阅读 · 0 评论 -
自动生成存储过程
-----------------------------函数-----------------------------清理默认值create FUNCTION [dbo].[fnCleanDefaultValue](@sDefaultValue varchar(4000)) RETURNS varchar(4000) AS BEGIN RETURN SubS原创 2012-02-06 23:02:54 · 2086 阅读 · 0 评论 -
SQL 触发器
一﹕ 触发器是一种特殊的存储过程它不能被显式地调用﹐而是在往表中插入记录﹑更新记录或者删除记录时被自动地激活。所以触发器可以用来实现对表实施复杂的完整性约`束。 二﹕ SQL Server为每个触发器都创建了两个专用表﹕Inserted表和Deleted表。这两个表由系统来维护﹐它们存在于内存中而不是在数据库中。这两个表的结构总是与被该触发器作用的表的结构相同。触发器执行 完成后﹐与原创 2012-02-21 19:11:22 · 1083 阅读 · 0 评论 -
Sql Server判断数据库、表、存储过程、函数是否存在
判断数据库是否存在if exists (select * from sys.databases where name = '数据库名')drop database [数据库名]判断表是否存在if exists (select * from sysobjects where id = object_id(N'[表名]') and OBJECTPROPERTY(id, N'IsUser原创 2012-02-22 15:11:28 · 1371 阅读 · 0 评论 -
ROW_NUMBER() OVER函数的基本用法
语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)简单的说row_number()从1开始,为每一条分组记录返回一个数字,这里的ROW_NUMBER() OVER (ORDER BY xlh DESC) 是先把xlh列降序,再为降序以后的没条xlh记录返回一个序号。示例: xlh row_num原创 2012-02-14 18:17:39 · 1063 阅读 · 0 评论 -
导出表中数据到sql文件
感觉这些sql语句非常有用,避免以后忘记,再此记下。也希望对看到的你有所帮助!----------------------------------------------- 导出表中数据到sql文件-- 根据表名,将表中的数据导出成插入的sql语句-- 例如:可以将sql server中的数据导入到mysql可以采用此用方法---------------------------原创 2012-02-15 00:11:06 · 2786 阅读 · 0 评论 -
将表数据生成SQL脚本的存储过程
--将表数据生成SQL脚本的存储过程 CREATE PROCEDURE dbo.UspOutputData @tablename sysname AS declare @column varchar(1000) declare @columndata varchar(1000) declare @sql varchar(4000) declare @xtype ti原创 2012-02-15 00:12:31 · 1438 阅读 · 0 评论 -
SQL 创建数组方法
------------------------------------------------------------------------- 数据库 数组-----------------------------------------------------------------------create function myArray(@array nVARCHAR(max),@原创 2012-03-05 17:08:47 · 14489 阅读 · 1 评论 -
SQL语句的写法:Update、Case、 Select 一起的用法
修改数据,需要验证后修改对应的数据,而验证的字段不再修改表中,就需要对多表进行查询,花了些时间想出了如下办法,感觉还是挺有用的,也挺过瘾的,之前很少碰到这样的,所以再次记录下:(此业务逻辑没有详细说明,如果你正在看这些,只需要看SQL的写的语法,相信您能看懂,也希望对您有所帮助) -------------------------------------------Update 与原创 2012-12-07 05:01:58 · 12587 阅读 · 0 评论 -
妙用Update Select
update select最常用的update语法是:UPDATE SET = , SET = 如果我的更新值Value是从一条select语句拿出来,而且有很多列的话,用这种语法就很麻烦第一,要select出来放在临时变量上,有很多个哦第二,再将变量进行赋值。列多起来非常麻烦,能不能像Insert那样,把整个Select语句的结果进行插入呢?就好象下面in转载 2012-12-07 05:05:49 · 1045 阅读 · 0 评论 -
SQL 分组后获取其中一个字段最大值的整条记录
------------------------------------------------有id,name,createDate的一张表testTable--根据name分组,获取每组中createDate最大的那条记录(整条)查询出来----------------------------------------------创建一张表,语句如下:CREATE TABLE原创 2012-02-15 00:27:13 · 58072 阅读 · 2 评论 -
数据库设计中的常用技巧
本文介绍了数据库设计中的14个技巧,这是许多人在大量的数据库分析与设计实践中,逐步总结出来的…… 下述十四个技巧,是许多人在大量的数据库分析与设计实践中,逐步总结出来的。对于这些经验的运用,读者不能生帮硬套,死记硬背,而要消化理解,实事求是,灵活掌握。并逐步做到:在应用中发展,在发展中应用。 1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是转载 2013-07-21 02:11:19 · 1248 阅读 · 0 评论 -
Update还可以这样用
update PU_T_VMIUsedVouchs set bcosting =(case when isnull(iconfirmquantity,0)=0 then 0 else bincost end) from warehouse where warehouse.cwhcode=PU_T_VMIUsedVouchs.cwhcode and PU_T_VMIUsedVouchs.id原创 2014-04-15 13:26:05 · 766 阅读 · 0 评论 -
统计各个商品每月的销售金额
统计各个商品每月的销售金额select t.cardcode '客户编码',t1.itemcode '物料编码',isnull(convert(dec(18,2),sum(case month(t.docdate) WHEN '1' then t1.quantity * t1.price end)),0) '一月',isnull(convert(dec(18,2),sum(case原创 2014-09-28 16:41:39 · 9874 阅读 · 0 评论 -
程序上面,一般不使用 悲观锁
程序上面,一般不使用 悲观锁 的。大多数情况下,是用乐观锁。每个表后面,增加一个 最后更新人 varchar 与 最后更新时间 datetime 这2个字段。每次检索的时候,先把表的信息检索进来, 包含 最后更新人 varchar 与 最后更新时间 datetime 这2个字段。当在 用户输入画面那里输入数据完毕以后, 要更新数据的时候。UPDATE 表SET 用户输入的字段原创 2015-09-16 03:27:44 · 746 阅读 · 0 评论 -
SQL之用户自定义函数
用户自定义函数(User Defined Functions)是SQL Server 的数据库对象,它不能用于执行一系列改变数据库状态的操作,但它可以像系统函数一样在查询或存储过程等的程序段中使用,也可以像存储过程一样通过EXECUTE 命令来执行。用户自定义函数中存储了一个Transact-SQL 例程,可以返回一定的值。 在SQL Server 中根据函数返回值形式的不同将用户自定义函数转载 2012-02-01 17:48:02 · 1683 阅读 · 0 评论 -
查看SQL语句在SQL Server上的执行时间
查看SQL语句在SQL Server上的执行时间 打开SQL Server的查询分析器。在下面语句两个go中间加入要执行的sql语句。set statistics profile onset statistics io onset statistics time ongogoset statistics profile offset statistics i原创 2012-01-30 10:03:20 · 1040 阅读 · 0 评论 -
SQL Server 2005 18452登录错误 的解决方法
无法连接到服务器 服务器:消息18452, 级别16,状态1 [Microsoft][ODBC SQL Server Driver][SQL Server]用户‘sa’登陆失败。原因:未与信任SQL Server连接相关联 该错误产生的原因是由于SQL Server使用了"仅 Windows"的身份验证方式,因此用户原创 2008-09-18 04:09:00 · 827 阅读 · 1 评论 -
创建数据库、创建表
Use mastergoIf Exists (Select * From sysdatabases Where name = bbs) --检查是否以存在bbsDB数据库 Drop Database bbsgo/*---- 创建文件夹 ----*/--sql 2005如何使用被禁止的"xp_cmdshell"USE master EXEC sp_c原创 2008-09-21 17:04:00 · 794 阅读 · 0 评论 -
存储过程出现Size具有无效大小值
在SQL Server 2005中,使用存储过程时,传入参数可以不指定长度,但是传出参数必须指定长度比如para = new SqlParameter("@re",SqlDbtype.Char);para.Direction = ParameterDirection.Output;如果这样写,就会出现 String[3]:Size具有无效大小值0 的错误。解决方法是为传出参数para指定长度:原创 2009-09-04 10:46:00 · 1563 阅读 · 0 评论 -
C# 接受存储过程返回来的参数
1. 创建存储过程以 output 的方式if exists (select * from dbo.sysobjects where id = object_id(N[dbo].proRet) and OBJECTPROPERTY(id, NIsProcedure) = 1)drop procedure [dbo].MYSQLGOCreate P原创 2009-09-04 11:07:00 · 1174 阅读 · 0 评论 -
通用分页的存储过程
IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N[Proc_Util_Page]) AND OBJECTPROPERTY(id, NIsProcedure) = 1)DROP PROCEDURE dbo.Proc_Util_PageGO/*分页调用方法:EXEC Proc_Util_Page country,原创 2009-09-29 12:08:00 · 804 阅读 · 0 评论 -
将一个表的数据插入到另一个表中
--b表存在(两表结构一样)insert into b select * from a若两表只是有部分(字段)相同,则insert into b(col1,col2,col3,col4,...) select col1,col2,col3,col4,... from a where...把表a插入到表b中去。--b表不存在select * into b from a//原创 2010-01-31 09:47:00 · 1692 阅读 · 0 评论 -
发布两个大数据集通用分页存储过程
发布两个大数据集通用分页存储过程,欢迎大家和我联系共同探讨改进方法,同时我也会及时将更新内容发布在下面的网址http://www.thinksea.com/thinksea/show.aspx?id=92db4c46-2216-4b24-a72b-aa27fcf82e50/*--用存储过程实现的大数据集分页程序显示指定表、视图、查询结果的第X页Copy Right 2007.09 ht转载 2009-12-14 18:40:00 · 908 阅读 · 0 评论 -
通用分页存储过程
/*通用分页存储过程 MS SQL Server 2005*/CREATE PROCEDURE Pagination( @TableName VARCHAR(255), -- 表名/视图名 @SelectFields VARCHAR(1000) = *, -- 需要返回的列 @Where VARCHAR(3000) = 1=原创 2010-04-20 11:35:00 · 815 阅读 · 0 评论 -
SQL——行转列,列转行
SQL——行转列,列转行原创 2010-08-20 05:35:00 · 3220 阅读 · 0 评论 -
数据库设计技巧
数据库设计技巧原创 2010-08-21 03:10:00 · 850 阅读 · 0 评论 -
SQL数据库时间获取技巧
SQL数据库时间获取技巧原创 2010-09-10 17:06:00 · 3183 阅读 · 0 评论 -
SQl 优化收集、总结
SQl 优化收集、总结原创 2010-09-18 15:16:00 · 947 阅读 · 0 评论 -
SQL 实现树查询
SQL 实现树查询原创 2010-09-08 23:41:00 · 931 阅读 · 0 评论 -
数据库建立索引的原则
铁律一:天下没有免费的午餐,使用索引是需要付出代价的。索引的优点有目共睹,但是,却很少有人关心过采用索引所需要付出的成本。若数据库管理员能够对索引所需要付出的代价有一个充分的认识,也就不会那么随意到处建立索引了。仔细数数,其实建立索引的代价还是蛮大的。如创建索引和维护索引都需要花费时间与精力。特别是在数据库设计的时候,数据库管理员为表中的哪些字段需要建立索引,要调研、要协调。如当建有索引的转载 2011-06-18 01:37:00 · 855 阅读 · 0 评论 -
乐观锁和悲观锁的区别
悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。乐观锁(Optimistic Lock), 顾名思义,就是很乐观,每次去拿数据的时候都认为别人原创 2015-09-16 03:03:48 · 572 阅读 · 0 评论