ADO.NET 在发送SQL语句到SQL Server数据库后,怎么知道真正INSERT,UPDATE,DELETE了多少行数据呢? 使用SQL Server内置的全局变量@@ROWCOUNT即可,@@ROWCOUNT可以返回在当前数据库连接(SqlConnection)中,执行的上一条SQL语句影响了多少行数据,使用示例如下所示: INSERT INTO [dbo].[Person]([PersonCode],[Name],[Age],[City]) VALUES (N,N'Beijing')…
转自:http://blog.csdn.net/starywx/article/details/23268465 前段时间由于项目赶期没顾上开发过程中的性能问题,现对部分代码进行优化的过程中发现在数据量大的情况下对数据的操作反应似乎有些慢,就想到对数据库DML操作的时候进行批量操作.说道这里也想到自己在一次面试的时候别问道过批量操作数据的问题. 现对运用说明记录如下: 批量插入insert 方法一: <insert id="insertbatch" parameterType=&…
1.执行SQL语句函数: int mysql_query(MYSQL* mysql, const char * query); query:所有的sql语句 2.例子: 向children表插入一条语句,查看sql语句改动的行数量. /* * MysqlQuery.c * * Created on: Sep 8, 2013 * Author: root */ #include <stdlib.h> #include <stdio.h> #include <mysql/mysq…
原文:SQL Server 游标运用:查看所有数据库所有表大小信息(Sizes of All Tables in All Database) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:游标 + 系统存储过程sp_MSForEachDB 方法二:封装sp_MSforeachtable + sys.databases 方法三:系统存储过程sp_MSForEachDB + sp_MSforeacht…
原文:SQL Server 游标运用:查看一个数据库所有表大小信息(Sizes of All Tables in a Database) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 方法一:运用游标 方法二:运用系统存储过程 方法三:拼接SQL 参考文献(References) 二.背景(Contexts) 在性能调优或者需要了解某数据库表信息的时候,最直观的方式就是罗列出这个数据所有表的信息,这些信息…
解决SQL Server管理器无法连接远程数据库Error: 1326错误 我们在在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例的问题,错误描述信息摘录如下: An error has occurred while establishing a connection to the server. (provider: Named Pipes Provider, error: 40 – Could not open a con…
JDBC连接SQL server与ADO.NET连接Sql Server对比 1.JDBC连接SQL server 1)java方面目前有很多驱动能够驱动连接SQL servernet.   主流的有两个sourceforge.jtds.jdbc.Driver和JDBC. 2)代码如下: package com.testSqlJDBC; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Resul…
add by zhj: 本文最后那个数据库别名没搞明白,在我的测试中没有建别名,是可以的.远程登陆时,服务器名称: 服务器IP,端口号 (如223.42.155.248,52134 如果是默认端口号1433,则可省略端口号) 原文:http://www.cnblogs.com/jaxu/archive/2010/11/23/1884411.html 许多初学者在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例的问题,大致的错误描…
SQL Server 数据类型映射 .NET Framework 4.5 SQL Server 和 .NET Framework 基于不同的类型系统. 例如,.NET Framework Decimal 结构的最大小数位数为 28,而 SQL Server 的 decimal 和 numeric 数据类型的最大小数位数为 38. 为了在读取和写入数据时维护数据的完整性,SqlDataReader 将公开用于返回 System.Data.SqlTypes 的对象的 SQL Server 特定的类型…
对数据库备份进行还原时遇到“sql System.Data.SqlClient.SqlError: 无法覆盖文件 'C:\Program Files\Microsoft SQL Server\MSSQL\data\itsm_Data.MDF'.数据库 'my1' 正在使用该文件”的问题. 产生原因:对一个数据库备份文件在两个数据库中进行还原时,这个问题的出现主要是因为还原第一个数据库和第二个数据库的名称是一样的,而且在第二个数据库还原时的物理路径时选的路径和第一个数据库还原路径一样. 解决方案:…
在项目中,经常需要备份数据库,如果能做到只需点个按钮(“开始备份数据库”按钮),然后什么都不管,数据库就自动备份好了,或者服务器上的数据库隔一段时间自动备份一次,那该多好啊. Sql server 的作业正好可以满足这一需求! Sql server的作业可以按照规定的时间执行指定的sql脚本,下面我以用作业备份Northwind数据为例,介绍如何用sql server 2008 r2创建作业备份数据库. 第一步:创建SQL Server作业 第二步:设置作业执行步骤 备份数据库的sql脚本如下:…
有时候SQL Server意外断电会导致SQL Server的ldf日志文件丢失或者损坏,这个时候你如果直接附加mdf文件到SQL Server会失败,这里提供一个方法可以还原只有mdf的数据库文件,这里我们假设你要还原的数据库文件是YourDB.mdf 首先在SQL Server中创建一个同名的数据库,叫[YourDB]. 然后停止SQL Server的数据库引擎服务,拷贝原先的YourDB.mdf到你刚才新建的[YourDB]数据库的文件目录并覆盖之. 启动SQL Server的数据库引擎服…
原文:监控SQL:通过SQL Server的DDL触发器来监控数据库结构的变化(1) 如果你要同步不同数据库之间的数据,首先会想到的是数据库复制技术,但如果让你同步数据库的结构,你会想到什么呢? 下面是一个例子,用来说明通过sql server中的DDL触发器,来记录create table.alter table.drop table等ddl操作. --2.1在master数据库中建立服务器级别跟踪表 use master go create table server_eventdata (e…
SQL Server游标   转载自:http://www.cnblogs.com/knowledgesea/p/3699851.html. 什么是游标 结果集,结果集就是select查询之后返回的所有行数据的集合. 游标则是处理结果集的一种机制吧,它可以定位到结果集中的某一行,多数据进行读写,也可以移动游标定位到你所需要的行中进行操作数据. 一般复杂的存储过程,都会有游标的出现,他的用处主要有: 定位到结果集中的某一行. 对当前位置的数据进行读写. 可以对结果集中的数据单独操作,而不是整行执行…
本章内容简介: 如何从数据库检索数据(SELECT) 如何向表中插入数据(INSERT) 如何适当更新数据(UPDATE) 如何删除表中数据(DELETE) 3.1 基本SELECT语句  如果你在此之前没有使用过SQL语言,或者还未真正理解它,那么注意学习本章的内容SELECT语句极其语法结构是SQL Server执行全部命令的基础.SELECT 语句的语法规则如下: SELECT [ALL|DISTINCT]  [TOP (<expression>) [PERCENT] [WITH TIE…
原文:SQL Server 2008空间数据应用系列三:SQL Server 2008空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测. 2.具备 Transact-SQL 编程经验和使用 SQL Server Management Studio 的经验. 3.熟悉或了解Microsoft SQL Server 2008中的空间数据类型. 4.具备相应的GIS专业理论知识. 5.其他相关知识. SQL Serve…
在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Server里的安全功能充分利用,不用在面对特定威胁,不能保护你数据的功能上浪费时间. 从让人眼花缭乱的客户端使用连接,通过到处分布的网络,尤其是互联网,关系数据库在各种应用程序里广泛使用.这使数据对任何人,在任何地方都可访问.数据库可以保存人类知识的很大部分,包括高度敏感的个人信息和让国际商务工作的关…
摘自: http://blog.csdn.net/yuxuac/article/details/8992893 SQL Server 2008 R2 Express Edition - Install SQL Server Profiler 我们知道 SQL Server 2008 R2 Express Edition 默认没有 Sql Server Profiler, 如果需要它, 我们不得不重新安装Enterprise版或者Developer版. 这样做太麻烦了,如果我们有SQL Serve…
在使用“用户模式”登陆SQL Server 2000时提示“未与信任SQL SERVER连接相关连”错误,因为在安装SQL Server时选择“仅Windows”模式,所以所有用户都不可以登陆. 解决方法:使用本地用户登陆“企业管理器”-->右侧选择“SQL Server组”中选择相应的“SQL Server注册”-->菜单栏-->工具-->SQL Server配置属性-->安全性-->身份验证-->选择“SQL Server和Windows”.…
SQL Server中查询CPU占用高的SQL语句 SQL Server 表变量的用法 究竟什么是敏捷测试--朱少民…
原文:[Transact-SQL]SQL Server自动把left join自动转化为inner join.以及关联时的数据重复问题 1.SQL Server自动把left join自动转化为inner join的问题: 下面的两个语句都是left join的,但是一个却转化成了 inner join drop table a,B go create table a(id int) insert into a select 1 union all select 2 create table b…
我们继续讲解LINQ to SQL语句,这篇我们来讨论Insert/Update/Delete操作.这个在我们的程序中最为常用了.我们直接看例子. Insert/Update/Delete操作 插入(Insert) 1.简单形式 说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提交到数据库. NorthwindDataContext db = new NorthwindDataContext(); var newCustomer…
ORACLE数据库误操作执行了DELETE,该如何恢复数据? 原创 2016年08月11日 17:23:04 10517 作为一个程序员,数据库操作是必须的,但是如果操作失误,一般都会造成比较严重的后果. 今天一不小心,干了一件揪心的事情,将正在使用的组织机构误操作执行了delete,顿时大脑有点缺氧,感觉蒙圈了(相信对于没有数据备份和回滚经验的小伙伴来说都是这样的感受),但是一想,数据库一般都是支持数据回滚的,然后查找了一下解决方案. 由于用的是Oracle数据库,这一点非常好,因为Oracl…
sql中同一个Trigger里同时包含Insert,Update,Delete SQLServer是靠Inserted表和Deleted表来处理的,判断一下就可以了,只不过比ORACLE麻烦一点 create trigger 触发名 on 表名 instead of insert,update,delete as --insert插入 from deleted) begin 打印插入 end --update更新 from deleted) begin 打印修改 end --delete删除 f…
SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. 在以前的文章里我们看到,SQL Server代理由一系列的作业步骤组成,每个作业步骤是要进行的不同工作类型.SQL Server代理也提供创建警报的功能,它可以发消息给指定的操作员作为提醒.这些提醒很可能通过数据库邮件发送,SQL Server和SQL Server代理内建的功能来发送和接收邮件.在这篇文章里,你会学到如何配置数据库邮件来进…
软件做大了,客户就多了,一个数据库服务器是远远不够的,当有一台数据服务器卦掉,那整个系统就会崩溃,所以必须考虑到数据库的自动同步与备份,当一台数据库服务 器宕机,自然就有用一台数据服务器启动起来保证整个软件系统的可用性.备份数据库与总数据库之间既统一又独立.这就是业务,技术服务于业务,那么摆在我们面前的问题是 如何让数据既统一又独立?其实SQLServer已经为我们提供了很好的解决方案:发布.订阅. 打开SQL Server2012的对象资源管理器我们可以看到里面有一个"复制"节点.(…
附加数据库,附加的时候会提醒找不到log文件 针对以上现象有两个写法的语句能解决: 写法一: USE MASTER; EXEC sp_detach_db @dbname = 'TestDB'; EXEC sp_attach_single_file_db @dbname = 'TestDB',      @physname =  'D:\Program Files\Microsoft SQL Server\MSSQL10_50.SQL2008\MSSQL\DATA\TestDB.mdf'   写法…
昨天工作中遇到这样一个场景,有个项目需要把某台服务器下所有的表和索引都启用数据压缩(data_compression=page),已经启用了的表和索引就不需要再压缩一次了.统计一下后发现要运行的REBUILD INDEX代码多达上万条,而整个服务器上的所有需要压缩的数据库对象大小加起来估计接近1TB.这种情况下如果把所有工作都交给一条脚本来完成,估计整个周末都跑不完.那么我们的想法就是用多个SQL Server Agent Job来做完成这个任务,分配单位是表(也就是说把同一张表的所有索引重建任…
由于数据库日志增长被设置为“无限制”,所以时间一长日志文件必然会很大,一个400G的数据库居然有600G的LOG文件,严重占用了磁盘空间.由于主要是做OLAP,所以数据库本身不会有大变动,所以日志也就没有多少作用了,因此想办法把数据库日志文件收缩到很小或者删除. 网上搜索相关解决方案后,得到的答案丰富多彩,但是真正管用的方案并不多,这里分享一个csdn上找到的方法.这个方法讲述了SQL Server 2005和SQL Server 2008在收缩数据库日志的不同之处,颇有帮助.同时,该方法的效率…
在SQL Server中,我们能否找到索引的创建时间?最后一次索引重建(Index Rebuild)的时间? 最后一次索引重组(INDEX REORGANIZE)的时间呢?  答案是我们无法准确的找到索引的创建时间.最后一次索引重组时间,最后一次索引重建的时间. 其实就目前SQL Server的各个版本而言,还没有一个系统表或DMV视图有保存索引创建的时间,索引重建的时间.索引重组的时间.但是有些方法可以间接得到最后一次索引重建的时间,但是这个值有时候往往不是准确的(有时候是准确的,有时候是不准…