数据库
sxf359
这个作者很懒,什么都没留下…
展开
-
如何获取单独表的批量插入语句
网上有专一编写的批量插入导出存储过程,但是有些由于表结构的原因导入不出。这里采用sqlserver自带的功能来解决此问题在数据库上右键点击选择任务--生成脚本打开生成和发布脚本窗口点下一步:勾选特定数据库对象,然后选中要导出的表这里选中area表,点下一步选中保存到新建查询窗口,然后点高级,打开原创 2016-12-02 09:50:38 · 455 阅读 · 0 评论 -
sqlserver查看触发器,存储过程,视图及表的一些命令
select name from sysobjects where xtype='TR' --所有触发器select name from sysobjects where xtype='P' --所有存储过程select name from sysobjects where xtype='V' --所有视图select name from sysobjects where原创 2017-06-15 20:46:12 · 1783 阅读 · 0 评论 -
windows下如何打开cmd窗口就能执行redis的相关命令
自从安装了redis,每次要执行redis的相关命令,都需要打开cmd窗口,然后输入cd,改变当前路径到安装redis的路径下,感觉很不方便。因为知道可以设置windows的环境变量,增加redis安装目录就可以实现无需切换路径。所以今天做了次这样的操作。在桌面找到计算机图标,右击属性,打开电脑属性窗口,点击高级系统设置,打开系统属性窗口,选择高级选项卡,点击环境变量,打开环境变量窗口。环境变原创 2017-06-08 16:25:45 · 10483 阅读 · 0 评论 -
第一个redis应用方法导致的提示redis LRANGE命令超时问题的解决
我的第一个redis应用的方法代码如下:public List GetRedisQuestionsLibraryList() { var qlist = RedisHelper.ListRange(RedisKey.RedisQuestionsLibraryList); if (qlist == null || qlis原创 2017-06-19 16:08:43 · 4157 阅读 · 0 评论 -
sqlserver2008压缩数据库主文件语句
-- 数据库恢复模式改为简单ALTER DATABASE TrafficSET RECOVERY SIMPLE;GO-- 压缩数据库文件DBCC SHRINKFILE (Traffic)GO-- 重设数据库默认未完全ALTER DATABASE TrafficSET RECOVERY FULL;GO原创 2017-06-12 15:42:51 · 628 阅读 · 0 评论 -
第一个redis应用:把一张表的数据保存到内存中,在查询页面调用
首先需要在 vs2017 程序包管理器控制台执行命令:Install-Package StackExchange.Redis此条命令会自动安装 StackExchange.Redis 最新版本。提示依赖项 Microsoft.AspNet.SignalR.Core.zh-Hans 有问题。查了下,在项目的 package 下有这个,但是版本是2.1.2 ,于是直接执行命令原创 2017-06-15 11:42:22 · 8873 阅读 · 0 评论 -
windows下redis修改密码和更改端口
在redis的安装目录下找到 redis.windows-service.conf 文件。用文本编辑器打开,然后找到port所在行,把默认的端口更改,比如更改为8888。这样端口就修改了找到requirepass所在行,回车另起一行,输入requirepass 017fe5e8-ad51 ,这样就设置了redis的密码为:017fe5e8-ad51 ,设置好保存后,若要使设置起作用,需要重启原创 2017-06-14 10:00:31 · 17229 阅读 · 0 评论 -
oracle存储过程在asp.net调用时出现无法将类型为Oracle.ManagedDataAccess.Types.OracleString的对象强制转换为类型System.String
通过调试发现是out_msg=(string)cmd.Parameters["out_msg"].Value此行代码出现了问题。通过分析,是cmd.Parameters["out_msg"].Value强制转换为了system.string。把此行代码换为out_msg=cmd.Parameters["out_msg"].Value.ToString();此问题解决...原创 2019-07-18 19:36:12 · 1303 阅读 · 0 评论 -
C#调用oracle存储过程出现ORA-06502: PL/SQL: 数字或值错误 : 字符到数值的转换错误
出现这个的原因是使用Oracle.ManagedDataAccess.dll作为数据库的连接驱动后,存储过程参数在C#中写的顺序必须严格按照oracle存储过程的先后次序来写。差一点都不行。这个和使用微软提供的system.data.oracleclient不同,使用这个不需按照oracle存储过程的参数先后顺序来写,只需参数名不写错就成。只是可惜的是使用system.data.oraclecli...原创 2019-07-18 19:46:35 · 1889 阅读 · 1 评论 -
PLS-00306: 调用 PROC_***_TERM 时参数个数或类型错误
这是C#调用oracle的连接驱动Oracle.ManagedDataAccess.dll出现的调用存储过程报的错误。这个我花费了一天多的时间才终于找到错误的原因,中间仔细的检查了参数的个数,以及各参数的类型,都没有问题,后来又按照网上说的按存储过程的参数出现顺序来写oracle的参数,仍然没有解决。后来又换了一个存储过程,调试另一个,出的问题是Oracle.ManagedDataAccess, ...原创 2019-07-18 19:58:41 · 1686 阅读 · 0 评论 -
oracle存储过程输出字符串被不定长截取导致输出内容不完全问题的解决
网上搜索的答案大多不沾边,唯一有一个是说64位的oracle和32位的客户端可能导致此问题。我这边检查了下,都是64位的,不是这里的问题。又仔细检查了下程序代码,初步怀疑是连接数据库的程序问题。连接数据库的工具是微软出的system.data.oracleclient.dll,这个微软将不再更新,推荐用oracle自己出的连接工具Oracle.ManagedDataAccess.dll。只是在更改...原创 2019-07-17 09:30:23 · 1438 阅读 · 0 评论 -
压缩数据库主文件语句
--验证文件是否有足够的可用空间可供删除SELECT name ,size/128.0 - CAST(FILEPROPERTY(name, 'SpaceUsed') AS int)/128.0 AS AvailableSpaceInMBFROM sys.database_files;--查询数据库主文件IDSELECT file_id, nameFROM sys.database_f原创 2017-05-12 10:50:12 · 365 阅读 · 0 评论 -
sqlserver2008压缩日志文件语句
12345678910111213--压缩日志文件到1MB -- 数据库恢复模式改为简单ALTER DATABASE TrafficSET RECOVERY SIMPLE;GO-- 压缩数据库日志文件为1MBDBCC原创 2017-05-12 10:42:29 · 480 阅读 · 0 评论 -
sqlserver数据库没有独占,不能还原
1.查询要还原的数据库IDSelect * from master..sysdatabases where name = 'dbdelibao' 2.获取该数据库的进程Select * from sys.sysprocesses a where a.dbid = '7';3.杀掉连接在上面的进程Kill 55kill 56kill 57原创 2016-11-24 11:28:46 · 493 阅读 · 0 评论 -
如何给OPENQUERY传递参数
发现SQL SERVER里,直接调用链接服务器的函数是不可以的。CREATE FUNCTION func_Test( @UserId INT)RETURNS TABLE ASRETURN ( SELECT * FROM [192.168.0.252].[User].dbo.func_GetData(@UserId))GO原创 2016-11-24 11:40:08 · 2253 阅读 · 0 评论 -
sqlserver重置自增列的值
--检查表的当前标示信息 DBCC CHECKIDENT('citysite',NORESEED) --重置表的当前标示为5 DBCC CHECKIDENT('citysite',RESEED,5) --检查表的当前标示信息和当前列值,如果表的当前标识值小于列中存储的最大值,则使用标识列中的最大值对其进行重置 DBCC CHECKIDENT('citysit原创 2016-11-25 10:29:46 · 537 阅读 · 0 评论 -
在查询分析器中执行update更新一个字段查询一直执行但不会成功
错误描述:最近一段时间早上查看我维护的一个网站,每次都出现连接数据库超时一过期的提示。在服务器上登陆不了sqlserver。在服务中也停止不了sqlserver服务。只能在任务管理器中强制结束进程,然后才能重启sqlserver服务。由于在0点以后服务器有任务计划执行。每天数据库也会执行备份计划。还有asp.net存在两个定时任务。怀疑是这里的问题。可是在几天处理的过程中,原创 2016-11-25 10:36:29 · 2885 阅读 · 0 评论 -
SQL2008还原的时候无法获得对数据库的独占访问权解决
SQL2008还原的时候无法获得对数据库的独占访问权解决 还原或删除sql server 2008数据库时,经常会出现: “因为数据库正在使用,所以无法获得对数据库的独占访问权”,终解决方案如下 关键SQL语句: ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE原创 2016-11-25 10:53:39 · 772 阅读 · 0 评论 -
查询某个表的字段名,字段类型,长度及字段说明,查询主键信息,查询自增列信息的存储过程
create PROCEDURE [dbo].[ziduan]/* function:查询某个表的字段名,字段类型,长度及字段说明,并asc排序;查询主键信息;查询自增列信息 */ (@biaoming nvarchar(50) ) ASSET NOCOUNT ON --获取字段名,长度,缺省值,字段说明sql2000可用 -原创 2016-12-15 09:43:58 · 4829 阅读 · 0 评论 -
在不符合条件的情况下禁止插入记录的触发器
ALTER TRIGGER [dbo].[tri_news_newsid_anti] ON [dbo].newsFOR INSERTASBEGINDECLARE @newstitle NVARCHAR(150) SELECT @newstitle=news_title FROM INSERTED IF CHARINDEX('0BEGIN原创 2016-12-15 09:49:45 · 12018 阅读 · 0 评论 -
sqlserver虚拟表的创建,赋值,及循环读取插入值给另一张表
DECLARE @id INT DECLARE @UserID INT DECLARE @tt TABLE (id INT IDENTITY(1,1),userid INT)INSERT INTO @tt(userid) SELECT UserID FROM dbo.AccountsInfo WHERE SpreaderID>0 AND UserID NOT I原创 2016-12-15 16:00:31 · 3118 阅读 · 0 评论 -
sqlserver各种注释语句的写法
--添加表注释语句DECLARE @v sql_variant SET @v = N'卡线记录表'EXECUTE sp_addextendedproperty N'MS_Description', @v, N'SCHEMA', N'dbo', N'TABLE', N'GameScoreLocker', NULL, NULLGO--表注释修改语句DEC原创 2016-12-15 16:04:35 · 4579 阅读 · 0 评论 -
如何快速发现和处理sqlserver数据库的死锁
首先在sqlserver的查询分析器中查看特定数据库被阻塞的进程select * from sysprocesses where dbid in (select dbid from sysdatabases where name='www_rztong_com_cn') and blocked>0 然后查看阻塞超时设置SELECT @@LOCK_TIMEOUT再次根原创 2017-01-22 17:43:54 · 2049 阅读 · 0 评论 -
ORA-01008: 并非所有变量都已绑定
oracle提示,并非所有变量都已绑定。sql语句很长很长,我就不贴出来了。经过仔细分析,感觉应该是传入sql的变量没有在sql语句中对应上相应参数造成。但是分析,大部分的传入参数都是等于方式。比如像这样:oracle语句: where rcc.customerunitcode = :customerunitcodevalue而相应的oracle参数是这样: parlist.Add(ne...原创 2019-07-29 14:59:00 · 6839 阅读 · 0 评论