SQL SERVER 替换字符串中的换行
SQL SERVER 替换字符串中的换行
SQL中可以使用Replace函数来对某个字段里的某些字符进行替换操作,语法如下:
语法:
REPLACE ( original-string, search-string, replace-string )
SQL SERVER 替换字符串中的换行
SQL中可以使用Replace函数来对某个字段里的某些字符进行替换操作,语法如下:
语法:
REPLACE ( original-string, search-string, replace-string )
SQLServerLinkServer链接服务器:执行远程存储过程,未将服务器配置为用于RPC
解决办法:
方法一(SQL语句)
EXEC sp_serveroption @server='SMS_SERVER' , @optname= 'rpc', @optvalue ='TRUE' EXEC sp_serveroption @server='SMS_SERVER' , @optname= 'rpc out', @optvalue='TRUE'
方法二(界面设置)
SELECT TOP 20 TEXT AS 'SQL Statement', last_execution_time AS 'Last Execution Time' ,(total_logical_reads + total_physical_reads + total_logical_writes) / execution_count AS [Average IO] ,(total_worker_time / execution_count) / 1000000.0 AS [Average CPU Time (sec)] ,(total_elapsed_time / execution_count) / 1000000.0 AS [Average Elapsed Time (sec)] ,execution_count AS "Execution Count" ,qp.query_plan AS "Query Plan" FROM sys.dm_exec_query_stats qs CROSS APPLY sys.dm_exec_sql_text(qs.plan_handle) st CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp --加上这个,执行时间有点长。 ORDER BY total_elapsed_time / execution_count DESC
SELECT TOP 20 total_worker_time/1000 AS [总消耗CPU 时间(ms)], execution_count [运行次数], qs.total_worker_time/qs.execution_count/1000 AS [平均消耗CPU 时间(ms)], last_execution_time AS [最后一次执行时间], max_worker_time /1000 AS [最大执行时间(ms)], SUBSTRING(qt.text,qs.statement_start_offset/2+1, (CASE WHEN qs.statement_end_offset = -1 THEN DATALENGTH(qt.text) ELSE qs.statement_end_offset END -qs.statement_start_offset)/2 + 1) AS [使用CPU的语法], qt.text [完整语法], dbname=db_name(qt.dbid), object_name(qt.objectid,qt.dbid) ObjectName FROM sys.dm_exec_query_stats qs WITH(nolock) CROSS apply sys.dm_exec_sql_text(qs.sql_handle) AS qt WHERE execution_count>1 ORDER BY total_worker_time DESC
最近甲方那里数据库一个日志文件有了600多G,把数据库占满了,停了半个小时,好吓人。
下面介绍收缩日志的方法:
在简单模式下,进行收缩操作。
SQL SERVER 偶发执行SQL语句卡问题解决
这两天客户那边操作系统,偶发非常卡,写代码追踪后发现是一个查询非常卡,但是表就只有十几条数据
处理方法:
一、查询锁表语句:
select request_session_id 锁表进程,OBJECT_NAME(resource_associated_entity_id) 被锁表名 , * from sys.dm_tran_locks where resource_type='OBJECT';
结果:
一、查询所有表,视图的基本信息,字段信息,索引信息
在数据字典与识图中可以找到相应的视图,来查询数据库基本信息;详细字段信息需要到视图中的查看里都有描述
在DBA_TAB_COLS视图中中有详细的表的描述下面是字段信息
TABLE_NAME 是表名,视图名或者集群名;
有一张系统视图 sys.object
在数据库内创建的每个用户定义的架构范围内的对象(包括本机编译的标量用户定义函数)都包含一行。
一、查询数据库内所有表的基本信息
在Mysql中information_schema.TABLES表存储了数据表的元数据信息,下面对常用的字段进行介绍:
TABLE_SCHEMA 记录数据库名;
SELECT name, type_desc,text FROM sys.all_sql_modules s JOIN sys.all_objects o ON s.object_id = o.object_id WHERE definition LIKE '%关键字%'ORDER BY type_desc, name;
SELECT name, xtype ,s.definition FROM sysobjects o, syscomments s WHERE o.id = s.id AND text LIKE '%agent%';
--查询所有包含某列名的对象 SELECT name, object_id,type, type_desc FROM sys.objects WHERE object_id IN ( SELECT object_id FROM sys.columns WHERE name = 'serverid' )
SQLServer 安装提示需要重启计算机的解决方案
处理方法:
在开始-程序-运行中(或者直接windows+R件同时),输入regedit回车,
在注册表中找到
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到PendingFileRenameOperations删除,就搞定
sql server 2012提示评估期已过的解决方法:
第一步:进入SQL2012配置工具中的安装中心。