
SqlServer
文章平均质量分 50
fisea
这个作者很懒,什么都没留下…
展开
-
EF映射之三:CodeFirst
CodeFirst一、CodeFirst是什么?二、使用步骤1.创建实体和DBContext对象2.在项目中添加EntityFramework包3.写测试来触发OnModelCreating三、映射策略1.CreateDatabaseIfNotExists2.DropCreateDatabaseAlways3.DropCreateDatabaseIfModelChanges四、源码下载一、CodeFirst是什么?先写数据库实体代码和DBContext对象,然后业务逻辑,通过代码来生成数据库。二、使原创 2020-12-20 18:32:28 · 727 阅读 · 0 评论 -
EF映射之二:CodeFirstFromDB
CodeFirstFromDB一、CodeFirstFromDB是什么?二、使用步骤1.创建数据库2.在项目中选择【数据】->[ADO.NET实体模型]3.选择模型内容和数据连接3.选择数据库对象三、映射方式1.特性映射2.OnModelCreating映射3.定义Mapping配置类四、源码下载总结一、CodeFirstFromDB是什么?先创建数据库,然后根据数据库中的对象(表、视图)来映射不同的实体,不支持存储过程、函数。二、使用步骤1.创建数据库样例如下:USE [EFDBFir原创 2020-12-20 14:05:52 · 388 阅读 · 0 评论 -
未指定 INSTANCESHAREDWOWDIR 命令行值。如果指定INSTANCESHAREDDIR 值,则必须指定该值
<br />插入光盘后不要用autorun的安装,使用命令行安装!cd进安装光盘的根目录,输入命令:<br />setup.exe /INSTALLSHAREDDIR="D://Program Files//Microsoft SQL Server//" /INSTALLSHAREDWOWDIR="D://Program Files (x86)//Microsoft SQL Server//"<br />安装即可,其中INSTALLSHAREDDIR为x64部件安装的路径,INSTALLSHAREDWOWD原创 2010-07-14 18:28:00 · 24281 阅读 · 2 评论 -
数据库设计准则(第一、第二、第三范式说明)
I、关系数据库设计范式介绍1.1 第一范式(1NF)无重复的列 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。简而言之,第一原创 2010-05-26 17:36:00 · 678 阅读 · 1 评论 -
存储过程生成流水号
1,首先在数据库中创建一个存放流水号的表 CREATE TABLE [dbo].[NumSeq] ( [Cate] [varchar] (2) NOT NULL , [DateNo] [varchar] (4) NOT NULL , [Seq] [int] NULL , [CrTime] [datetime] NOT NULL )上面原创 2010-05-29 18:23:00 · 586 阅读 · 0 评论 -
Sql Server中使用newid()随机函数取出数据
<br />这种用法相信在网站中经常使用,如要在表中随机取出10条记录,如果使用编程语言进行运算的话会很麻烦而且效率低下。在Sql Server中自带了random()函数用于生成随机数,其实它还自带了另外一个随机函数newid();newid()在扫描每条记录时都会生成一个随机的值:<br />执行select newid();运行结果<br /><br />可以看到这并不是一个随机的数字类型。<br />在表中随机取出n条记录,就可以使用select top n * from table order b原创 2010-06-01 08:35:00 · 2711 阅读 · 0 评论 -
SQL中case when then的使用实例
<br />假设现在News表有以下字段 <br />News_Id,News_Title,News_IsSetTop,News_SetTopTime <br />其中News_IsSetTop(char(1))是“是否置顶”的含义;News_SetTopTime(DateTime)是置顶时间; <br />现在要实现:如果News_IsSetTop为"1"时 ,ORDER BY News_IsSetTop DESC,News_Id DESC;News_IsSetTop为"0"时,ORDER BY News原创 2010-06-01 08:43:00 · 520 阅读 · 0 评论 -
sql server中将自增长列归零
<br />一个项目完成后数据库中会有很多无用的测试数据,可以使用delete * 将数据全部删除,但自增长列(一般是主键)基数不会归零,使用TRUNCATE函数可以将表中数据全部删除,并且将自增长列基数归零。一定要注意,表中的数据全部删除了。它的语法如下:<br />TRUNCATE TABLE tableName –其中tableName中所要操作的数据原创 2010-06-01 08:51:00 · 796 阅读 · 0 评论 -
asp.net 存储过程分页字段排序
<br />最近在asp.net 用到的sqlserver存储过程分页中显示数据时遇到关于排序问题。<br />网上的一些分页存储过程只支持排序列为int 类型,对于实际开发中很多时候都需要对DateTime类型,varchar类型进行排序。<br />下面分享一下可以支持任意数据类型的列进行排序的存储过程。<br />Create PROCEDURE sp_viewByPage<br />@TblName varchar(50), — 表名<br />@FldName va原创 2010-06-01 09:00:00 · 558 阅读 · 0 评论 -
sql Injection
<br />#region Anti-SQL Injection Attack<br /> /// <summary><br /> /// 匹配字符串sWord,若含有注入代码,则返回True,否则返回False<br /> /// </summary><br /> /// <param name="sWord">需要检测的内容</param><br /> /// <returns>布尔值</returns><br /> p原创 2010-06-10 14:10:00 · 474 阅读 · 0 评论 -
产生流水号
<br />一个产生流水号(年月日+5位流水号)的存储过程<br />现在客户有一个需求,要产生一个流水号,如090611+000001(年月日+五位流水号),此流水号在数据库表中是主键,且为varchar类型。如果在当天之内插入此流水号,则此流水号递增,即:090611000001,090611000002,090611000003,如果不是在当天时间,必须从090612000001开始递增。我写了个存储过程实现它。<br />create procedure test_proc<br /> @id n原创 2010-06-16 16:53:00 · 1929 阅读 · 0 评论 -
sql常见面试题目
题目1:<br />======<br /> 为管理岗位业务培训信息,建立3个表:<br />S (S#,SN,SD,SA) S#,SN,SD,SA 分别代表学号、学员姓名、所属单位、学员年龄<br />C (C#,CN ) C#,CN 分别代表课程编号、课程名称<br />SC ( S#,C#,G ) S#,C#,G 分别代表学号、所选修的课程编号、学习成绩<br /><br />1. 使用标准SQL嵌套语句查询选修课程名称为 税收基础 的学员学号和姓名<br />Select SN,转载 2011-03-27 17:36:00 · 735 阅读 · 0 评论 -
SQL经典面试题及答案
<br />1.一道SQL语句面试题,关于group by<br />表内容:<br />2005-05-09 胜<br />2005-05-09 胜<br />2005-05-09 负<br />2005-05-09 负<br />2005-05-10 胜<br />2005-05-10 负<br />2005-05-10 负<br /><br />如果要生成下列结果, 该如何写sql语句?<br /><br /> 胜 负<br />2005-05-09 2 2<br />2005-原创 2011-03-26 23:21:00 · 682 阅读 · 0 评论 -
解决并清除SQL被注入恶意病毒代码的语句
declare @t varchar(255),@c varchar(255) declare table_cursor cursor for select a.name,b.name from sysobjects a,syscolumns b ,systypes c where a.id=b.id and a.xtype=u and c.name in (char, n转载 2010-05-13 16:54:00 · 481 阅读 · 0 评论 -
查字段指定数据后一行记录
/* ID NUM 1 800 2 855 3 866 4 800 5 844 如何查NUM字段指定数据后一行记录?如NUM字段中800后一条记录 */ create table tb(ID int, NUM int) insert into tb values(1 , 800 ) insert into tb values(2 , 85原创 2010-05-13 16:42:00 · 138 阅读 · 0 评论 -
SQL经典短小代码收集
--SQL Server:Select TOP N * From TABLE Order By NewID() --Access:Select TOP N * From TABLE Order By Rnd(ID) Rnd(ID) 其中的ID是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(UserName) Select TOP N * From TABLE Order BY Rn原创 2010-05-13 15:46:00 · 533 阅读 · 0 评论 -
SQL操作全集
下列语句部分是Mssql语句,不可以在access中使用。 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1、说明:创建数据库 CREATE DATABASE data原创 2009-12-14 15:33:00 · 404 阅读 · 0 评论 -
数据库设计中的14个技巧
下述十四个技巧,是许多人在大量的数据库分析与设计实践中,逐步总结出来的。对于这些经验的运用,读者不能生帮硬套,死记硬背,而要消化理解,实事求是,灵活掌握。并逐步做到:在应用中发展,在发展中应用。 1. 原始单据与实体之间的关系 可以是一对一、一对多、多对多的关系。在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体。在特殊情况下,它们可能是一对多或多对原创 2009-12-15 15:45:00 · 400 阅读 · 0 评论 -
sql injection
1、知道用户名但是不知道密码password: or 1=1 --2、利用地址栏进行攻击知道数据库中的id字段?id=3;delete from tbname(会删除数据库里面的所有用户)采取措施:假设知道id是int的可以这样写:int id=0;if(int.TryParse(Request.QueryString["id"],out id)){var strSql="select *原创 2010-03-25 20:50:00 · 432 阅读 · 0 评论 -
sql server 2005新特新
select * from (select row_number() over(order by id desc) as rowid,* from news) tb where tb.rowid between 10 and 20select * from (select *,row_number() over(partition by (catalogid) order by [newsid原创 2010-03-25 20:49:00 · 374 阅读 · 0 评论 -
SQL SERVER中一些特别地方的特别解法
--1.关于where筛选器中出现指定星期几的求解SQL code <!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->--环境create table test_1( id int, val原创 2010-04-22 10:18:00 · 714 阅读 · 0 评论 -
千万级通用的分页存储过程
第一个方法:/* 经测试,在 14483461 条记录中查询第 100000 页,每页 10 条记录按升序和降序第一次时间均为 0.47 秒,第二次时间均为 0.43 秒,测试语法如下: exec GetRecordFromPage news,newsid,10,100000 news 为 表名, newsid 为关键字段, 使用时请先对 newsid 建立索引。*//* 函数名称原创 2010-04-30 11:31:00 · 359 阅读 · 0 评论 -
SQL Server存储过程入门案例详解
问题提出 我使用过几次SQL Server,但所有与数据库的交互都是通过应用程序的编码来实现的。我不知到在哪里使用存储过程,也不了解实现存储过程需要做哪些工作。希望能详细说明。 专家答疑 存储过程是存储于数据库中的一组T-SQL语句。有了存储过程之后,与数据库的交互就没有必要在程序中写一堆的SQL语句,而只需用一条语句调 用适当的存储过程来完成就可以了。另外,由于代码是存储在数据库原创 2010-04-30 11:57:00 · 480 阅读 · 0 评论 -
关于SQL时间类型的模糊查询
今天用time Like 2008-06-01%语句来查询该天的所有数据,被提示语句错误。查了一下才发现该模糊查询只能用于String类型的字段。自己也查阅了一些资料。关于时间的模糊查询有以下三种方法: 1.Convert转成String,在用Like查询。select * from table1 where convert(varchar,date,120) like 2006-0转载 2010-05-13 16:11:00 · 1060 阅读 · 0 评论 -
分页存储
Create PROCEDURE page @tblName varchar(255), -- 表名 @strGetFields varchar(1000) = *, -- 需要返回的列 @fldName varchar(255)=, -- 排序的字段名 @PageSize int = 10, -- 页尺寸 @PageI原创 2010-05-13 14:41:00 · 418 阅读 · 0 评论 -
master.dbo.spt_values
--统计某月份周情况 没有的补0if object_id(temp_tb) is not null drop table temp_tbcreate table temp_tb([ID] [numeric](18, 0) IDENTITY(1,1) NOT NULL,[test_values] int NULL,[time] datetime null,);goinsert into temp转载 2010-05-13 16:08:00 · 2438 阅读 · 1 评论 -
如何向一个自增字段插值
--如何向一个自增字段插值 create table tablename(id int identity(1,1)) go insert into tablename default values go set identity_insert tablename on insert tablename(id) select 11 select * from tablename go --set原创 2010-05-13 16:33:00 · 493 阅读 · 0 评论 -
同步两个数据库
*--同步两个数据库的示例 06 07 有数据 08 srv1.库名..author有字段:id,name,phone, 09 srv2.库名..author有字段:id,name,telphone,adress原创 2010-05-13 14:03:00 · 477 阅读 · 0 评论 -
获取第n行数据
set nocount on--建立测试环境并插入数据,并且表没有主键create table test(id int ,name varchar(10))insert into test select 999,jinjazz insert into test select 888,csdn insert into test select 999,sqlserver--通过游标获取原创 2009-08-24 09:55:00 · 408 阅读 · 0 评论