弹指一挥间

好好做事,学习待人 (大数据分析/.NET/JAVA)技术交流QQ:860280456; .NET/JAVA技术交流群:192028174

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

随笔分类 -  【SQL_MSSQL】

摘要:一、表变量 表变量在SQL Server 2000中首次被引入。表变量的具体定义包括列定义,列名,数据类型和约束。而在表变量中可以使用的约束包括主键约束,唯一约束,NULL约束和CHECK约束(外键约束不能在表变量中使用)。定义表变量的语句是和正常使用Create Table定义表语句的子集。只是表变量通过DECLARE @local_variable语句进行定义。 表变量的特征: 表变... 阅读全文
posted @ 2017-03-05 16:20 v.e.n.u.s 阅读(1398) 评论(0) 推荐(1)

摘要:SELECT * FROM opendatasource('sqloledb','data source=192.168.1.197;user id=sa;password=sa').SafetyMonitor3.dbo.Dictionary 解决办法: --启用Ad Hoc Distributed Queries:新建查询,输入 exec sp_configure 'sh... 阅读全文
posted @ 2016-05-17 14:06 v.e.n.u.s 阅读(702) 评论(0) 推荐(0)

摘要:MSSQL: 1.省市县-数据脚本 阅读全文
posted @ 2016-04-07 12:00 v.e.n.u.s 阅读(320) 评论(0) 推荐(0)

摘要:去除tab、空格、回车符等使用replace语句 按照ASCII码, SELECT char(64) 例如64 对应 @,则select REPLACE(‘abc@qq.com’,char(64),’kk’) 则结果为 abckkqq.com 依此类推, 去掉其他特殊符号,参考ASCII码对照表, 去掉tab符号为 select REPLACE(‘要替换的字符或列名’,char(9),’替换的目标... 阅读全文
posted @ 2016-01-13 13:03 v.e.n.u.s 阅读(32678) 评论(1) 推荐(0)

摘要:定义一个存储过程如下: create proc [dbo].[test1]@id intasselect 1 as id,'abc' as name union allselect @id as id,'zzz' as name 返回两行数据.现在想用SQL语句来调用这个存储过程,并把他返回的表放入变量中.可以如下做: declare @table table(id int,name varc... 阅读全文
posted @ 2016-01-08 19:55 v.e.n.u.s 阅读(9431) 评论(0) 推荐(0)

摘要:有时想删除某个表时,提示“无法删除对象 'Orders',因为该对象正由一个 FOREIGN KEY 约束引用”,原因很简单不要急躁,它被其它表的外键引用了,所以无法删除,在此只需先找到哪些表的外键引用了该表的字段。通过系统函数就能解决(SQL Server系统函数提供了非常完善的功能,能代替我们查找和解决许多问题)。 select fk.name,fk.object_id,OBJECT_N... 阅读全文
posted @ 2015-08-17 12:32 v.e.n.u.s 阅读(1192) 评论(0) 推荐(0)

摘要:(1) 定义:char: 固定长度,存储ANSI字符,不足的补英文半角空格。nchar: 固定长度,存储Unicode字符,不足的补英文半角空格varchar: 可变长度,存储ANSI字符,根据数据长度自动变化。nvarchar: 可变长度,存储Unicode字符,根据数据长度自动变化。nvarch... 阅读全文
posted @ 2015-04-29 12:58 v.e.n.u.s 阅读(667) 评论(0) 推荐(0)

摘要:【遍历所有表,复制表结构,复制表数据】 --插入语句SELECT * INTO A FROM B 是在还没有A表的情况下,直接通过B表创建并把B表数据复制到A表里面,之后A,B表的结构和数据完全一样。insert into A select * from B 是在已经创建了A表的情况下,将B表数据复制到A表,此前A表的结构要和B表相同,不然插入的时候报错。 --复制表结构到新的库中SELECT... 阅读全文
posted @ 2015-04-15 21:07 v.e.n.u.s 阅读(169) 评论(0) 推荐(0)

摘要:--判断某个存储过程是否存在if exists (select * from sysobjects where id = object_id(N'[p_CreateTable]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [p_CreateTable] --create proc p_Creat... 阅读全文
posted @ 2015-04-15 20:46 v.e.n.u.s 阅读(329) 评论(0) 推荐(0)

摘要:使用的表结构如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->USE[TestDB]GO/****** 对象: Table [dbo].[Person] 脚本日期: 11/23/2008 13:37:48 ******/SET ... 阅读全文
posted @ 2015-02-16 15:25 v.e.n.u.s 阅读(3391) 评论(0) 推荐(0)

摘要:SQLserver2008使用表达式递归查询语句--由父项递归下级 with cte(id,parentid,text) as (--父项 select id,parentid,text from treeview where parentid = 450 union all --递归结果集中的下级... 阅读全文
posted @ 2015-01-29 09:07 v.e.n.u.s 阅读(812) 评论(0) 推荐(0)

摘要:SQL Server 数据库设计 一、数据库设计的必要性 二、什么是数据库设计 三、数据库设计的重要 四、数据模型 实体-关系(E-R)数据模型 实体(Entity) 属性(Attribute) 关系(Relationship) 五、数据库设计步骤 1、 需求分析阶段... 阅读全文
posted @ 2014-10-27 23:27 v.e.n.u.s 阅读(248) 评论(0) 推荐(0)

摘要:--创建登陆用户--create login login_name from windows with default_database = database | default_language = language;create login [localhost\hoojo-pc] from windows with default_database = testHome;--创建登陆用户-... 阅读全文
posted @ 2014-10-27 23:24 v.e.n.u.s 阅读(431) 评论(0) 推荐(0)

摘要:触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。 Ø 什么是触发器 触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、delet... 阅读全文
posted @ 2014-10-27 23:21 v.e.n.u.s 阅读(483) 评论(0) 推荐(0)

摘要:Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句。这样就可以提高存储过程的性能。 Ø 存储过程的概念 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 存储过程中可以包含逻辑控制语句... 阅读全文
posted @ 2014-10-27 23:17 v.e.n.u.s 阅读(469) 评论(0) 推荐(0)

摘要:建议先阅读存储过程:SQL Server 存储过程 Ø 事务 在数据库中有时候需要把多个步骤的指令当作一个整体来运行,这个整体要么全部成功,要么全部失败,这就需要用到事务。 1、 事务的特点 事务有若干条T-SQL指令组成,并且所有的指令昨晚一个整体提交给数据库系统,执行时,这组指令要么全部执行完成,要么全部取消。因此,事务是一个不可分割的逻辑单元。 事务有... 阅读全文
posted @ 2014-10-27 23:12 v.e.n.u.s 阅读(393) 评论(0) 推荐(0)

摘要:Ø 索引 1、 什么是索引 索引就是数据表中数据和相应的存储位置的列表,利用索引可以提高在表或视图中的查找数据的速度。 2、 索引分类 数据库中索引主要分为两类:聚集索引和非聚集索引。SQL Server 2005还提供了唯一索引、索引视图、全文索引、xml索引等等。聚集索引和非聚集索引是数据库引擎中索引的基本类型,是理解其他类型索引的基础。... 阅读全文
posted @ 2014-10-27 23:07 v.e.n.u.s 阅读(274) 评论(0) 推荐(0)

摘要:T-SQL语句用于管理SQL Server数据库引擎实例,创建和管理数据库对象,以及查询、插入、修改和删除数据。 Ø 变量 1、 局部变量(Local Variable) 局部变量是用户可以自定义的变量,它的作用范围是仅在程序内部,在程序中通常用来储存从表中查询到的数据或当做程序执行过程中的暂存变量。使用局部变量必须以@开头,而且必须用declare命令后才能使用。 ... 阅读全文
posted @ 2014-10-27 23:02 v.e.n.u.s 阅读(355) 评论(0) 推荐(0)

摘要:Ø Go批处理语句 用于同时执行多个语句 Ø 使用、切换数据库 use mastergo Ø 创建、删除数据库方法1、--判断是否存在该数据库,存在就删除if (exists (select * from sys.databases where name = 'testHome')) drop database testHomego--创建数据库,设置数据库文件、日... 阅读全文
posted @ 2014-10-27 22:55 v.e.n.u.s 阅读(437) 评论(0) 推荐(0)

摘要:一、数据库设计的必要性 在实际的软件项目中,如果系统中需要存储的数据量比较大,需要设计的表比较多,表与表之间的关系比较复杂,那我们就需要进行规范的数据库设置。如果不经过数据库的设计,我们构建的数据库不合理、不恰当,那么数据库的维护、运行效率会有很大的问题。这将直接影响到项目的运行性和可靠性。 二、什么是数据库设计 数据库设计实际上就是规划和结构化数据库中的数据对象以及... 阅读全文
posted @ 2014-10-27 22:48 v.e.n.u.s 阅读(923) 评论(0) 推荐(0)