sql server 2008 express 安装的时提示“重启计算机失败"
摘要:sql server 2008 express 安装的时提示“重启计算机失败"解决办法:打开注册表编辑器(regedit.exe),在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 中找到 PendingFil...
阅读全文
100个MySQL 的调节和优化的提示
摘要:100个MySQL 的调节和优化的提示MySQL是一个功能强大的开源数据库。随着越来越多的数据库驱动的应用程序,人们一直在推动MySQL发展到它的极限。这里是101条调节和优化MySQL安装的技巧。一些技巧是针对特定的安装环境的,但这些思路是通用的。我已经把他们分成几类,来帮助你掌握更多MySQL的...
阅读全文
C#访问MySQL数据库的方法
摘要:C#访问MySQL数据库的方法(1)首先需要下载C#访问MySQL数据库的ADO.NET驱动程序下载地址为:http://dev.mysql.com/downloads/connector/net/6.0.html我下载的版本为:mysql-connector-net-6.3.8.msi下载地址如下...
阅读全文
SQL Server 动态行转列(参数化表名、分组列、行转列字段、字段值)
摘要:一.本文所涉及的内容(Contents)本文所涉及的内容(Contents)背景(Contexts)实现代码(SQL Codes)方法一:使用拼接SQL,静态列字段;方法二:使用拼接SQL,动态列字段;方法三:使用PIVOT关系运算符,静态列字段;方法四:使用PIVOT关系运算符,动态列字段;扩展阅...
阅读全文
TOP字句加SQL变量的相关问题
摘要:SQL Server数据库中的变量可以加载TOP字句之后,下文将对TOP字句加SQL变量的相关问题进行讨论,供您参考,希望对您学习SQL数据库有所帮助。SQL Server2005开始,TOP子句后可以跟常量或者变量,跟常量时可省略括号,即top(2)和top 2是等价的(注意不加括号时top和2间的空格),top后使用SQL变量时必须使用括号,例:Sql代码declare @num intset @num = 10select top(@num) * from sys.tablesdeclare @num intset @num = 10select top(@num) * from sys
阅读全文
SQL表之间复制数据、选出随机几条数据、删除重复数据、取得自增长列等操作
摘要:--表之间数据复制SELECT* INTO yozhu FROM yo --复制一份表SELECT* INTO yozhu1 FROM yo where 11 --只复制表结构,无数据SELECT TOP 0 * into yozhu2 FROM yo --只复制表结构,无数据insert into yo(yoName) select yoName from yo--把本表复制一遍insert into pubs.dbo.yo select yoName from dbo.yo --数据库之间的表复制SELECT * FROM pubs.dbo.yoSELECT * FROM yo--嵌套查询
阅读全文
分享一个自动生成单据的存储过程
摘要:近期接到一个需求需要将一个大的单据拆分成多个小单据,这几个小单据主信息要相同,除了单号和ID外其他都要一样,于是我考虑了借用游标和循环来进行拆分数据,并最终实现了该方法,通过了测试,代码如下: IF OBJECT_ID(N'tempdb..#tmpOrgList', 'U') IS NOT NULL drop table #tmpOrgList---获取所有有客户的分公司的列表select distinct OrgID into #tmpOrgList from v_WS400TelSurveyCustDetl--声明新建单据的ID和BillNodeclare
阅读全文
SQL临时表
摘要:临时表就是那些名称以井号 (#) 开头的表。如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表不存储在当前数据库内,而是存储在系统数据库 tempdb 内。临时表有两种类型:本地临时表以一个井号 (#) 开头的那些表名。只有在创建本地临时表的连接上才能看到这些表,链接断开时临时表即被删除(本地临时表为创建它的该链接的会话所独享)或者这样说局部临时表是有当前用户创建的,并且只有当前用户的会话才可以访问。如果本地临时表由存储过程创建或由多个用户同时执行的应用程序创建(其实可看作是不同的链接,不同的会话),则数据库引擎必须能够区分由不同用户创建的表。为此,数据库引擎在
阅读全文
使用临时表关联数据时效率低的问题
摘要:今天我们在调查一个数据传送问题时,发现数据传输量比较大,造成传输超时。我们仔细的审查了一次数据表中的关联关系,我们发现有接近20张表在进行关联,一个业务表的数据经过10多个基础关联后,数据量有几千条数据增长为了几万条数据,我们使用大多为left join,但是当我们关联到最后一个表,这个表是一个临时表,只有不到10条数据,但是只要一关联这个表查询速度立马下降了百倍都不止。 经过几次测试,均证实了是关联该临时表是造成数据超时的关键因素,于是我们就考虑将此临时表的数据导入到一个物理表中再做关联。这样一来效率就大大提升了,也就解决了数据超时的问题。 经过此次切身感受,真实感...
阅读全文
sp_executesql介绍和使用
摘要:execute相信大家都用的用熟了,简写为exec,除了用来执行存储过程,一般都用来执行动态Sqlsp_executesql,sql2005中引入的新的系统存储过程,也是用来处理动态sql的, 如:exec sp_executesql @sql, N'@count int out,@id varchar(20)', @cou out,@id@sql为拼成的动态sqlN'@count int out,@id varchar(20)'为拼成的动态sql内的参数列表@cou out,@id为为动态sql内参数列表提供值的外部参数列表那么它们之间有什么区别呢?1,它们之
阅读全文
SQL Server中临时表与表变量的区别
摘要:我们在数据库中使用表的时候,经常会遇到两种使用表的方法,分别就是使用临时表及表变量。在实际使用的时候,我们如何灵活的在存储过程中运用它们,虽然它们实现的功能基本上是一样的,可如何在一个存储过程中有时候去使用临时表而不使用表变量,有时候去使用表变量而不使用临时表呢? 临时表 临时表与永久表相似,只是它的创建是在Tempdb中,它只有在一个数据库连接结束后或者由SQL命令DROP掉,才会消失,否则就会一直存在。临时表在创建的时候都会产生SQL Server的系统日志,虽它们在Tempdb中体现,是分配在内存中的,它们也支持物理的磁盘,但用户在指定的磁盘里看不到文件。 临时表分为本地和全局两种...
阅读全文
excel文档中数据导入sql server注意事项
摘要:进来经常需要对一些基础数据进行更新,而业务方提供的数据源往往都是excel,所以经常需要将excel中数据导入到数据库临时表,然后再进行处理。 在导入过程中,发现有些数据比如手机号码,如果默认导入,excel格式不特别设置为文本,那么导入时到数据库中的格式将显示为float.那么在进行数据更新时就会出现坑爹的现象了,如果在转换数据时,再将float转为nvarchar处理的话,那么数据将会失真,比如13509897653会变为13e97347之类的数据。 所以如果使用Sql server的批量数据导入时,一定要注意将excel中文本格式预先根据需要进行些设置,这样可...
阅读全文
数据库系统日志文件无法自动增长的后果
摘要:昨天下午生产系统突然无法保存销售提单了,而且是全面爆发,所有用户都无法保存销售类单据了。事情比较紧急,所以公司的运维部门的电话很快就被打爆了。我们马上检查了数据库服务器和应用服务器的网络状况及内存,cpu使用状况等等,发现这些都正常,于是我们又检查了数据库的文件大小及磁盘空间是否够用,日志文件增长情况等等,也毫无头绪。 在这个时候我们想起在前几天从线上取了一个完整备份库恢复到了测试服务器上,并搭建了一个测试环境,测试时发现库存单据也无法进行保存。当时由于测试服务器空间有限,急需将测试库的数据清理一部分,所以我们就将所有数据量比较大的表列出来了,并首先将库存单据明细表和主表给清除了一部分数据,.
阅读全文
SQL Server 2008中SQL之WaitFor
摘要:SQL Server 2008中SQL应用系列--目录索引在SQL Server 2005以上版本中,在一个增强的WaitFor命令,其作用可以和一个job相当。但使用更加简捷。看MSDN:http://msdn.microsoft.com/zh-cn/library/ms187331.aspx语法为:WAITFOR { DELAY 'time_to_pass' | TIME 'time_to_execute' | [ ( receive_statement ) | ( get_conversation_group_statement ) ] [ , TIMEO
阅读全文
SQL 中OPENQUERY的使用
摘要:OpenQuery 是SQL Server用来与其他Server交互的一种技术,通过OpenQuery,SQL Server 可以直接访问其他数据库资源。而其他数据库在OpenQuery 表达式中是以Linked Server 存在的。 使用sp_linkedservers 可以找到当前数据库的所有linked server.例如在sql server 2008数据库中通过链接服务器想访问sql server 2000 的数据库就必须使用OpenQuery了。OpenQuery的表达式可以这么写:Select * from OpenQuery([linkedServerName],'S
阅读全文
数据量增大后的问题
摘要:不知不觉,公司目前运行的业务系统已经有6年之久了,生成环境中的数据库的数据量也非常大了,达到了200多G了,有很多表的数据量已经有几亿条了。但是我们的数据库以前设计时的ID为int类型,所以这些类型的值范围很快会用完了。所以必须要对数据库的重新设计了,同时业务系统也需要进行了升级优化了。int类型的数的范围是最大值是21亿多。按照目前的数据增长量,是该考虑将一些大数据量的表中的id用bigint来代替int了。还有数据库的文件块增长设置,数据库的分区,分表,读写分离等等问题也是该提上日程了。因为很显然数据量增长到一定程度后,就会有各种各样的问题了,比如查询报表超时,保存数据慢啊。。。 有些实.
阅读全文
SQL2000的系统表sysproperties在SQL2005中 无效的 问题
摘要:有两种解决办法方法一、是我在网上找的:将原来的sysproperties改成sys.extended_properties并且对应关系如下sys.extended_propertiesleft join sys.extended_properties g on a.id=g.class anda.colid=g.minor_idleft join sys.extended_properties f on d.id=f.class and f.minor_id=02000的数据库附加不能05的数据库里出了sysproperties不存在上面就是解决的方法,以后备用。 【sysproperties
阅读全文
使用SQL Server发送邮件时遇到的诡异事件
摘要:最近公司要实现一个邮件群发的功能,因此设计时就考虑用SQL Server的邮件发送功能直接推送邮件算了。可是在实现的过程中,邮件内容中有一个表格的内容要展现,于是就编排了一个表格来实现。 具体实现如下: set @tableHTML= N''+ N'经销商名称县级类型'+ N'县级城市终端客户名称联系人'+ N'联络电话抽查时间联系电话是否准确'+N'是否合作客户'+N'联系人是否准确终端客户资料是否准确正确信息'+N'终端客户订单响应时间终端客户类型终端客户信息修改时间'+CAST
阅读全文
替换SQL字段中的换行符,回车符
摘要:替换SQL字段中的换行符,回车符:在富文本内容中通常会出现回车、换行内容。在sql数据库中这些回车、换行符,输出html后,表现为空格。这里是在数据导出、导入中发现的,通常把回车、换行符找出来,用替换。这里使用了,sql 函数。replace(string_expression , string_pattern , string_replacement),第一个参数:要查找的字段。第二个参数:要查找的字符。第三个参数:要替换成的字符。char(9) 水平制表符char(10)换行键char(13)回车键1> 回车符 char(13)SELECT *, REPLACE(detail, CH
阅读全文
SQL中获取排序分组后数据的脚本
摘要:废话不多说了,先上一段代码,如下所示:select distinct b.OrgID,b.CompanyID,b.AreaID,b.CustChannelID,b.CustID,b.SaleTotalQty,GETDATE() from KDS400TelSurveyCustAll_Temp as tmp1 cross apply(select top 10 percent * from KDS400TelSurveyCustAll_Temp tmp2where tmp1.OrgID=tmp2.OrgID and tmp1.CompanyID=tmp2.CompanyIDand tm...
阅读全文