工作中点滴记录

永远保持学徒心态

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 18 下一页

2012年3月23日

摘要: 在开始使用 FILESTREAM 之前,必须在 SQL Server 数据库引擎实例中启用 FILESTREAM。本主题说明了如何使用 SQL Server 配置管理器来启用 FILESTREAM。启用和更改 FILESTREAM 设置在“开始”菜单中,依次指向“所有程序”、“Microsoft SQL Server 2008”和“配置工具”,然后单击“SQL Server 配置管理器”。在服务列表中,右键单击“SQL Server 服务”,然后单击“打开”。在“SQL Server 配置管理器”管理单元中,找到要在其中启用 FILESTREAM 的 SQL Server 实例。右键单击该实例 阅读全文
posted @ 2012-03-23 16:11 梦里故乡 阅读(300) 评论(0) 推荐(0) 编辑

2012年3月18日

摘要: 经常会遇见要在存储过程中获得刚刚插入成功记录的自增长列的数据,SQL server给我们提供了一个全局变量@@identity,它可以获得刚刚插入成功的自增列列的信息,需要注意,如果一次插入多条数据,这个@@identity就是最后一条记录的自增列的信息;如果表中没有自增长列,@@identity的值就是NULL。举例如下:Orders 主表 1 CREATE TABLE Orders( 2 OrderID INT IDENTITY(1,1) NOT NULL PRIMARY KEY, 3 OrderDate datetime , 4 ShippeDate datetime, 5 Shi... 阅读全文
posted @ 2012-03-18 11:48 梦里故乡 阅读(4645) 评论(0) 推荐(0) 编辑

2012年3月4日

摘要: 外键是双向的,即不仅是限制子表的值必须存在于父表中,而且还在每次对父表操作后检查子表,数据库默认行为子行存在时候限制对父行不被删除。某些时候,我们需要能够自动删除相关记录,而不是防止删除被引用的记录。举例如下:创建有关联关系的两个table 1 USE DataBaseBulkCopy 2 GO 3 CREATE TABLE Orders( 4 OrderID INT NOT NULL , 5 CustomerID CHAR(5) NULL, 6 OrderDate datetime default getdate(), 7 ShipName nvarchar(40) Null,... 阅读全文
posted @ 2012-03-04 14:50 梦里故乡 阅读(3445) 评论(0) 推荐(0) 编辑

2012年3月3日

摘要: 在项目中遇见到查询参考此报价地区的地区信息,并且把此地区的信息与查询出来的参考报价地区信息组成一张临时表,这用到UNION 或则UNION all,SQL 代码如下:SQL 11 CREATE TYPE TY_AreaANDGoods AS TABLE(2 AreaID INT,3 TypeID INT4 )5 DECLARE @dt TY_AreaANDGoods;6 INSERT INTO @dt VALUES(1,1);7 SELECT aa.AreaId,aa.GoodsTypeId FROM MD_Area aa,@dt tt WHERE aa.QuotationType... 阅读全文
posted @ 2012-03-03 21:41 梦里故乡 阅读(645) 评论(0) 推荐(0) 编辑

2012年2月27日

摘要: Exists在sql server 中是重要的关键字,可以使得一些查询的效率更高。在项目中遇见到查询有报价的地区信息和查询没有报价的地区信息,当时我用了INNER JOIN来实现,发现当数据量达到千万级后效率很差,后改为Exists关键字实现,效率提高不少。查询有报价的地区信息:sql_11 SELECT mm.ID, mm.CnName FROM MD_AreaInfo mm INNER JOIN MD_Prices pp ON mm.ID = pp.AreaID GROUP BY mm.ID, mm.CnName用exists关键字实现:SQL_21 SELECT mm.ID,... 阅读全文
posted @ 2012-02-27 23:07 梦里故乡 阅读(812) 评论(0) 推荐(1) 编辑

2012年2月26日

摘要: 这3个月一直在做公司的报价系统的新功能开发和一些性能改版,经常性的遇见查询某个地区某个交易品下的最近一天的价格。在这里面用到一个表MD_HistoryPrices是保存历史报价记录。第一种解决方式:用临时表:临时表1 WITH temp_2 AS(2 SELECT AreaID ,GoodsId,MIN(PriceDate) as PriceDate FROM MD_HistoryPrices GROUP BY AreaID,GoodsId3 )4 SELECT pp.* FROM MD_HistoryPrices pp , temp_2 tt WHERE pp.AreaID = tt.Are 阅读全文
posted @ 2012-02-26 22:54 梦里故乡 阅读(362) 评论(0) 推荐(0) 编辑

摘要: 在项目中,我们经常会遇见把某个数据库中的某个表全部记录移动到另一个数据库中的某个表中,或则在某个数据库中两个表中进行数据数据的复制。ADO.NET提供一个类 SqlBulkCopy类,避免了往某个表或者另一个数据库某个表进行循环插入(在数据量很大、性能要求严格循环访问数据库不实用).创建一个数据库DataBaseBulkCopy,并在这个数据库创建2个表,分别为MD_Area和Md_AreaInfosql 脚本 1 CREATE DATABASE DataBaseBulkCopy 2 USE DataBaseBulkCopy 3 GO 4 CREATE TABLE MD_Area( 5 ID 阅读全文
posted @ 2012-02-26 14:16 梦里故乡 阅读(570) 评论(0) 推荐(0) 编辑

摘要: 在附加数据库时候遇见 5120错误,建议把放置放置数据库的文件夹的权限更改为完全控制。 阅读全文
posted @ 2012-02-26 13:45 梦里故乡 阅读(10532) 评论(2) 推荐(2) 编辑

2012年2月19日

摘要: with在MSDN中的讲解,可以参考链接SQL 1 ------------------------------------ 2 ------创建表值变量类型-------------- 3 ------------------------------------ 4 CREATE TYPE Ty_NewAreaGoods AS TABLE( 5 AreaID INT NOT NULL, 6 GoodsID INT NOT NULL 7 ) 8 ------------------------------------- 9 ----创键返回今天报价的数据--------... 阅读全文
posted @ 2012-02-19 23:01 梦里故乡 阅读(806) 评论(0) 推荐(0) 编辑

2012年2月18日

摘要: 经常遇见过这种情况,在存储过程中经常用with创建临时表,这个临时表这这个功能模块中多次运用,如果都用With创建相同功能的临时表,好性能和存储过程中有很多冗余代码,为此,我用表变量来实现此种功能(不是表值变量)定义表变量的语法:DECLARE 表变量名字 TABLE(列名 列类型 是否为空,列名 列类型 是否为空,列名 列类型 是否为空,列名 列类型 是否为空)下面是我这项目中运用的存储过程:PROC 1 USE [xb_quotation_dev2] 2 GO 3 4 /****** Object: StoredProcedure [dbo].[usp_UpdateTodayPrice.. 阅读全文
posted @ 2012-02-18 14:45 梦里故乡 阅读(5892) 评论(2) 推荐(1) 编辑

上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 18 下一页