1. ---查看所有存储过程或视图的位置
  2. select a.name,a.[type],b.[definition] from sys.all_objects a,sys.sql_modules b
  3. where a.is_ms_shipped=0 and a.object_id = b.object_id and a.[type] in ('P','V','AF')
  4. order by a.[name] ASC
  5. GO
  6.  
  7. --1、查看所有存储过程与函数
  8. exec sp_stored_procedures
  9. --或者
  10. select * from dbo.sysobjects where OBJECTPROPERTY(id, N'IsProcedure') = 1 order by name
  11. --2、查看存储过程的内容
  12. select text from syscomments where id=object_id('dbo.CalcCustomerPrice')
  13. -- 或者用
  14. sys.sp_helptext dbo.CalcCustomerPrice
  15. GO
  16.  
  17. ---
  18. sys.sp_helptext @objname = N'CalcCustomerPrice', -- nvarchar(776)
  19. @columnname = NULL -- sysname
  20.  
  21. sys.sp_helptext dbo.CalcCustomerPrice
  22. GO
  23.  
  24. sys.sp_helptext @objname = N'', -- nvarchar(776)
  25. @columnname = NULL -- sysname
  26.  
  27. --3、查看存储过程的参数情况
  28. select '参数名称' = name,
  29. '类型' = type_name(xusertype),
  30. '长度' = length,
  31. '参数顺序' = colid,
  32. '排序方式' = collation
  33. from syscolumns
  34. where id=object_id('CalcCustomerPrice')
  35.  
  36. --4、查看所有存储过程内容
  37. select b.name ,a.text from syscomments a,sysobjects b where object_id(b.name)=a.id and b.xtype in('P','TR')
  38.  
  39. --5、查看包含字符串内容的存储过程
  40. select b.name ,a.text from syscomments a,sysobjects b
  41. where
  42. charindex('字符串内容',a.text)>0 and
  43. object_id(b.name)=a.id and b.xtype in('P','TR')
  44. GO
  45.  
  46. --查看存储过程参数信息:
  47. --如果返回值>1,则有参数。否则无
  48. CREATE PROC sp_PROC_Params
  49. @procedure_name sysname , --存储过程或者用户定义函数名
  50. @group_number int=1 , --存储过程的组号,必须在032767之间,0表示显示该存储过程组的所有参数
  51. @operator nchar(2)=N'=' --查找对象的运算符
  52. AS
  53. SET NOCOUNT ON
  54. DECLARE @SQL nvarchar(4000)
  55. SET @SQL=N'SELECT
  56. PorcedureName=CASE
  57. WHEN o.xtype IN(''P'',''X'')
  58. THEN QUOTENAME(o.name)+N'';''+CAST(c.number as varchar)
  59. WHEN USER_NAME(o.uid)=''system_function_schema''
  60. AND o.xtype=''FN''
  61. THEN o.name
  62. WHEN USER_NAME(o.uid)=''system_function_schema''
  63. THEN ''::''+o.name
  64. WHEN o.xtype=''FN''
  65. THEN QUOTENAME(USER_NAME(o.uid))+N''.''+QUOTENAME(o.name)
  66. ELSE QUOTENAME(o.name) END,
  67. Owner=USER_NAME(o.uid),
  68. GroupNumber=c.number,
  69. ParamId=c.colid,
  70. ParamName=CASE
  71. WHEN o.xtype=''FN'' AND c.colid=0 THEN ''<Returns>''
  72. ELSE c.name END,
  73. Type=QUOTENAME(t.name)+CASE
  74. WHEN t.name IN (''decimal'',''numeric'')
  75. THEN N''(''+CAST(c.prec as varchar)+N'',''+CAST(c.scale as varchar)+N'')''
  76. WHEN t.name=N''float''
  77. OR t.name like ''%char''
  78. OR t.name like ''%binary''
  79. THEN N''(''+CAST(c.prec as varchar)+N'')''
  80. ELSE '''' END,
  81. Orientation=CASE
  82. WHEN o.xtype=''FN'' AND c.colid=0 THEN ''<Returns>''
  83. ELSE N''Input''
  84. +CASE WHEN c.isoutparam=1 THEN ''/Output'' ELSE '''' END
  85. END
  86. FROM sysobjects o,syscolumns c,systypes t
  87. WHERE o.id=c.id
  88. AND c.xusertype=t.xusertype
  89. AND o.name'
  90. +CASE WHEN @operator IN ('=','>','>=','!>','<','<=','!<','<>','!=')
  91. THEN @operator+QUOTENAME(@procedure_name,'''')
  92. WHEN @operator='IN'
  93. THEN @operator+N' IN('+QUOTENAME(@procedure_name,'''')+')'
  94. WHEN @operator IN ('LIKE','%')
  95. THEN ' LIKE '+QUOTENAME(@procedure_name,'''')
  96. ELSE '='+QUOTENAME(@procedure_name,'''')
  97. END+N'
  98. AND(('+CASE WHEN @group_number BETWEEN 1 AND 32767
  99. THEN N'c.number='+CAST(@group_number as varchar)
  100. WHEN @group_number=0 THEN N'1=1'
  101. ELSE N'c.number=1'
  102. END+N' AND o.xtype IN(''P'',''X''))
  103. OR (c.number=0 AND o.xtype=''FN'')
  104. OR (c.number=1 AND o.xtype IN(''IF'',''TF'')))'
  105. EXEC sp_executesql @SQL
  106. GO
  107.  
  108. --返回在 Sql Server 实例中的数据库或可以 通过数据库网关访问的数据库
  109. EXEC sp_databases
  110. GO
  111.  
  112. EXEC SYS.sp_databases
  113. GO
  114.  
  115. --返回可在当前环境中查询的对象列表。也就是说,返回任何能够在 FROM 子句中出现的对象(不包括同义词对象)
  116.  
  117. EXEC sp_tables @table_owner='dbo'
  118. GO
  119.  
  120. EXEC sp_tables
  121. @table_name = '%',
  122. @table_owner = 'Person',
  123. @table_qualifier = 'AdventureWorks2012';
  124. GO
  125. --返回针对指定的表或索引视图的所有索引和统计信息的列表,用于观察表的索引情况,很有用
  126. EXEC sp_statistics 'APClericalCostDetail'
  127. GO
  128.  
  129. --返回 SQL Server、数据库网关或基础数据源的属性名称和匹配值的列表。
  130. EXEC sys.sp_server_info
  131. GO
  132.  
  133. EXEC sp_server_info
  134. GO
  135.  
  136. EXEC SYS.sp_server_info @attribute_id = 0 -- int
  137.  
  138. --返回当前环境中可查询的指定表或视图的列信息
  139. EXEC sys.sp_columns @table_name = N'', -- nvarchar(384)
  140. @table_owner = N'', -- nvarchar(384)
  141. @table_qualifier = NULL, -- sysname
  142. @column_name = N'', -- nvarchar(384)
  143. @ODBCVer = 0 -- int
  144.  
  145. EXEC sp_columns @table_name = N'APClericalCostDetail',
  146. @table_owner = N'dbo'
  147. GO
  148.  
  149. --返回一组唯一标识表中某个行的最优列。如果事务更新了行中的某个值,则还将返回自动更新的列
  150. EXEC sys.sp_special_columns @table_name = NULL, -- sysname
  151. @table_owner = NULL, -- sysname
  152. @table_qualifier = NULL, -- sysname
  153. @col_type = '', -- char(1)
  154. @scope = '', -- char(1)
  155. @nullable = '', -- char(1)
  156. @ODBCVer = 0 -- int
  157.  
  158. GO
  159.  
  160. EXEC sys.sp_special_columns @table_name = N'APClericalCostDetail', -- sysname
  161. @table_owner = 'dbo'
  162. GO
  163.  
  164. --为当前环境中的单个存储过程或用户定义函数返回列信息
  165. EXEC sys.sp_sproc_columns @procedure_name = N'', -- nvarchar(390)
  166. @procedure_owner = N'', -- nvarchar(384)
  167. @procedure_qualifier = NULL, -- sysname
  168. @column_name = N'', -- nvarchar(384)
  169. @ODBCVer = 0, -- int
  170. @fUsePattern = NULL -- bit
  171. GO
  172.  
  173. EXEC sys.sp_sproc_columns @procedure_name = N'CalcVendorPrice', -- nvarchar(390)
  174. @procedure_owner = N'dbo'
  175. GO
  176.  
  177. --返回指定的一个或多个表的表权限的列表,即 返回当前用户的 对该表的 INSERTDELETEUPDATESELECTREFERENCES 权限,并且必须有该数据库的访问权。
  178. EXEC sys.sp_table_privileges @table_name = N'', -- nvarchar(384)
  179. @table_owner = N'', -- nvarchar(384)
  180. @table_qualifier = NULL, -- sysname
  181. @fUsePattern = NULL -- bit
  182. GO
  183.  
  184. EXEC sys.sp_table_privileges @table_name = N'APClericalCostDetail', -- nvarchar(384)
  185. @table_owner = N'dbo'
  186. GO
  187.  
  188. --返回当前环境中单个表的列特权信息。
  189. sp_column_privileges
  190.  
  191. --返回当前环境中的存储过程列表
  192. sp_stored_procedures
  193.  
  194. --返回当前表中的主键信息 sp_pkeys
  195. EXEC sys.sp_pkeys @table_name = NULL, -- sysname
  196. @table_owner = NULL, -- sysname
  197. @table_qualifier = NULL -- sysname
  198. GO
  199. EXEC sys.sp_pkeys @table_name = 'APClericalCostDetail', -- sysname
  200. @table_owner = N'dbo'
  201. GO
  202. --返回当前表中的外键信息
  203. EXEC sys.sp_fkeys @pktable_name = NULL, -- sysname
  204. @pktable_owner = NULL, -- sysname
  205. @pktable_qualifier = NULL, -- sysname
  206. @fktable_name = NULL, -- sysname
  207. @fktable_owner = NULL, -- sysname
  208. @fktable_qualifier = NULL -- sysname
  209. GO
  210.  
  211. EXEC sys.sp_fkeys @pktable_name = 'APClericalCostDetail', -- sysname
  212. @pktable_owner = N'dbo'
  213. go
  214.  
  215. --Sys.SysProcesses 系统表是一个很重要的系统视图,主要用来定位与解决Sql Server的阻塞和死锁
  216.  
  217. /*
  218. 视图中主要的字段:
  219. 1. Spid:Sql Servr 会话ID
  220. 2. Kpid:Windows 线程ID
  221. 3. Blocked:正在阻塞求情的会话 ID。如果此列为 Null,则标识请求未被阻塞
  222. 4. Waittype:当前连接的等待资源编号,标示是否等待资源,0 或 Null表示不需要等待任何资源
  223. 5. Waittime:当前等待时间,单位为毫秒,0 表示没有等待
  224. 6. DBID:当前正由进程使用的数据库ID
  225. 7. UID:执行命令的用户ID
  226. 8. Login_time:客户端进程登录到服务器的时间。
  227. 9. Last_batch:上次执行存储过程或Execute语句的时间。对于系统进程,将存储Sql Server 的启动时间
  228. 10.Open_tran:进程的打开事务个数。如果有嵌套事务,就会大于1
  229. 11.Status:进程ID 状态,dormant = 正在重置回话 ; running = 回话正在运行一个或多个批处理 ; background = 回话正在运行一个后台任务 ; rollback = 会话正在处理事务回滚 ; pending = 回话正在等待工作现成变为可用 ; runnable = 会话中的任务在等待获取 Scheduler 来运行的可执行队列中 ; spinloop = 会话中的任务正在等待自旋锁变为可用 ; suspended = 会话正在等待事件完成
  230. 12.Hostname:建立链接的客户端工作站的名称
  231. 13.Program_name:应用程序的名称,就是 连接字符串中配的 Application Name
  232. 14.Hostprocess:建立连接的应用程序在客户端工作站里的进程ID号
  233. 15.Cmd:当前正在执行的命令
  234. 16.Loginame:登录名
  235. */
  236.  
  237. SELECT * FROM Sys.SysProcesses
  238. GO
  239.  
  240. SELECT SPID = er.session_id
  241. , ot.Threads
  242. , RunningThreads = coalesce(rsp.RunningThreads,0)
  243. , Pct_Comp = er.percent_complete
  244. , Est_Comp_Time = CASE er.estimated_completion_time WHEN 0 THEN NULL ELSE dateadd(ms, er.estimated_completion_time, getdate()) END
  245. , er.status
  246. , er.command
  247. , database_name = sd.name
  248. , BlockedBy = wt.blocking_session_id
  249. , HeadBlocker = coalesce(hb5.session_id, hb4.session_id, hb3.session_id, hb2.session_id, hb1.session_id)
  250. , wait_type = coalesce(CASE er.wait_type WHEN 'CXPACKET' THEN 'CXPACKET - ' + sp.lastwaittype1 ELSE sp.lastwaittype1 END, lower(er.last_wait_type)) --Lowercase denotes it's not currently waiting, also noted by a wait time of 0.
  251. , Wait_Time_Sec = Cast(er.wait_time/1000.0 as DEC(20,3))
  252. , er.wait_resource
  253. , Duration_Sec = Cast(DATEDIFF(s, er.start_time, GETDATE()) as DEC(20,0))
  254. , CPU_Sec = Cast(er.cpu_time/1000.0 as DEC(20,3))
  255. , Reads_K = Cast(er.reads/1000.0 as DEC(20,3))
  256. , Writes_K = Cast(er.writes/1000.0 as DEC(20,3))
  257. , [Statement] = SUBSTRING (st.text, er.statement_start_offset/2,
  258. abs(CASE WHEN er.statement_end_offset = -1
  259. THEN LEN(CONVERT(NVARCHAR(MAX), st.text)) * 2
  260. ELSE er.statement_end_offset END - er.statement_start_offset)/2)
  261. , st.text as Query
  262. , es.login_time
  263. , es.host_name
  264. , program_name = CASE LEFT(es.program_name, 29)
  265. WHEN 'SQLAgent - TSQL JobStep (Job '
  266. THEN 'SQLAgent Job: ' + (SELECT name FROM msdb..sysjobs sj WHERE substring(es.program_name,32,32)=(substring(sys.fn_varbintohexstr(sj.job_id),3,100))) + ' - ' + SUBSTRING(es.program_name, 67, len(es.program_name)-67)
  267. ELSE es.program_name
  268. END
  269. , es.client_interface_name
  270. , es.login_name
  271. , es.status
  272. , es.total_scheduled_time
  273. , es.total_elapsed_time
  274. , er.start_time
  275. , es.last_request_start_time
  276. , es.last_request_end_time
  277. , er.database_id
  278. --, qp.query_plan
  279. FROM sys.dm_exec_requests er
  280. INNER JOIN sys.dm_exec_Sessions es on er.session_id=es.session_id
  281. LEFT JOIN sys.databases sd on er.database_id=sd.database_id
  282. INNER JOIN (SELECT session_id, count(1) Threads FROM sys.dm_os_tasks GROUP BY session_id) ot on er.session_id=ot.session_id
  283. LEFT JOIN (SELECT spid, LastWaitType1 = MIN(lastwaittype), LastWaitType2 = MAX(lastwaittype) FROM sysprocesses sp WHERE waittime > 0 AND lastwaittype <> 'cxpacket' GROUP BY spid) sp ON er.session_id = sp.spid
  284. LEFT JOIN (SELECT spid, RunningThreads = COUNT(1) FROM sysprocesses sp WHERE waittime = 0 GROUP BY spid) rsp ON er.session_id = rsp.spid
  285. LEFT JOIN (SELECT session_id, max(blocking_session_id) blocking_session_id FROM sys.dm_os_waiting_tasks wt WHERE wt.blocking_session_id <> wt.session_id GROUP BY session_id) wt ON er.session_id = wt.session_id
  286. LEFT JOIN (SELECT session_id, max(blocking_session_id) blocking_session_id FROM sys.dm_os_waiting_tasks wt GROUP BY session_id) hb1 ON wt.blocking_session_id = hb1.session_id
  287. LEFT JOIN (SELECT session_id, max(blocking_session_id) blocking_session_id FROM sys.dm_os_waiting_tasks wt GROUP BY session_id) hb2 ON hb1.blocking_session_id = hb2.session_id
  288. LEFT JOIN (SELECT session_id, max(blocking_session_id) blocking_session_id FROM sys.dm_os_waiting_tasks wt GROUP BY session_id) hb3 ON hb2.blocking_session_id = hb3.session_id
  289. LEFT JOIN (SELECT session_id, max(blocking_session_id) blocking_session_id FROM sys.dm_os_waiting_tasks wt GROUP BY session_id) hb4 ON hb3.blocking_session_id = hb4.session_id
  290. LEFT JOIN (SELECT session_id, max(blocking_session_id) blocking_session_id FROM sys.dm_os_waiting_tasks wt GROUP BY session_id) hb5 ON hb4.blocking_session_id = hb5.session_id
  291. CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS st
  292. --CROSS APPLY sys.dm_exec_query_plan(er.plan_handle) qp
  293. WHERE er.session_id <> @@SPID
  294. --AND es.host_name like '%%'
  295. --AND er.session_id = 2702
  296. ORDER BY er.percent_complete DESC, er.cpu_time DESC, er.session_id
  297.  
  298. --Use the below command to get the last input of an open session id
  299. --dbcc inputbuffer(61)
  300.  
  301. SELECT COUNT(*)
  302.  
  303. FROM sys.dm_tran_active_transactions T
  304.  
  305. JOIN sys.dm_tran_session_transactions S
  306.  
  307. ON S.transaction_id = T.transaction_id
  308.  
  309. WHERE transaction_begin_time < DATEADD(MS, -30000, GETDATE())
  310.  
  311. --2. With identifying database
  312.  
  313. SELECT d.name, COUNT(*) as Tx, MIN(transaction_begin_time) as Earliest
  314.  
  315. FROM sys.dm_tran_active_transactions tat
  316. INNER JOIN sys.dm_exec_requests er
  317. ON tat.transaction_id = er.transaction_id
  318. CROSS APPLY sys.dm_exec_sql_text(er.sql_handle)
  319. JOIN sys.databases d
  320.  
  321. ON d.database_id = er.database_id
  322.  
  323. WHERE transaction_begin_time <= DATEADD(MS, -30000, GETDATE())
  324.  
  325. GROUP BY d.name
  326. GO
  327.  
  328. select * from sys.dm_exec_sessions
  329. GO
  330. --Mapping System Tables to System Views (Transact-SQL)
  331. ---https://docs.microsoft.com/en-us/sql/relational-databases/system-tables/mapping-system-tables-to-system-views-transact-sql
  332.  
  333. --查询得到数据库的名字
  334. Select name,dbid from master.sys.sysdatabases
  335. GO
  336.  
  337. --表中的每条记录都对应着数据库中的数据文件或日志文件的一次备份信息。表中的字段说明了备份时文件的属性。通俗的说,是备份文件的详细表。
  338.  
  339. SELECT * FROM [msdb].[dbo].backupfile
  340. GO
  341. ---[compressed_backup_size],
  342. SELECT TOP 1000 [backup_set_id],a.[media_set_id],[expiration_date],[name],[user_name],[software_major_version],[backup_start_date],[backup_finish_date],[type],[compatibility_level], [backup_size],[database_name] ,[server_name], [is_password_protected],[recovery_model],[is_damaged] ,[begins_log_chain], b.physical_device_name
  343.  
  344. FROM [msdb].[dbo].[backupset] a,[msdb].[dbo].[backupmediafamily] b
  345.  
  346. where a.media_set_id=b.media_set_id order by backup_set_id desc
  347. GO
  348.  
  349. --备份时,数据库中的每个文件组占一行。
  350. SELECT * FROM [msdb].[dbo].backupfilegroup
  351.  
  352. --每个媒体簇在表中占一行。如果媒体簇驻留在镜像媒体集中,则对于媒体集中的每个镜像服务器,该媒体簇都具有一个单独的行。该表存储在 msdb 数据库中。媒体簇,即备份后的物理文件。
  353. backupmediafamily
  354.  
  355. --每个备份媒体集在表中占一行
  356. SELECT * FROM [msdb].[dbo].backupmediaset
  357.  
  358. --每个备份媒体集在表中占一行
  359.  
  360. SELECT * FROM [msdb].[dbo].backupset
  361. --
  362. select top 150 a.run_date,a.run_time, b.name,step_id,step_name,a.message,a.run_status,a.run_duration
  363. from msdb.dbo.sysjobhistory a ,msdb.dbo.sysjobs b
  364. where a.job_id=b.job_id and name not in('job_exclude') and a.step_id>0
  365. order by run_date DESC
  366. GO
  367.  
  368. --记录当前 SQL Server 代理作业活动和状态。
  369. SELECT * FROM [msdb].[dbo].sysjobactivity
  370.  
  371. --sysjobhistory 表 包含有关 SQL Server 代理执行预定作业的信息 通俗易懂的说,就是记录 job 执行的历史情况,该表比较有用,能查看job执行的时间、状态、完成信息等。
  372. SELECT * FROM [msdb].[dbo].sysjobhistory
  373.  
  374. --SQL Server 代理执行的各个预定作业的信息 sysjobs 表
  375.  
  376. SELECT * FROM [msdb].[dbo].sysjobs
  377.  
  378. --sysjobservers 表 MSDN:存储特定作业与一个或多个目标服务器的关联或关系。
  379.  
  380. SELECT * FROM [msdb].[dbo].sysjobservers
  381.  
  382. --sysjobschedules 表 job(作业)下次执行的时间信息 --塗聚文
  383. SELECT * FROM [msdb].[dbo].sysjobschedules
  384. --sysjobsteps 表 包含 SQL Server 代理要执行的作业中的各个步骤的信息。
  385. SELECT * FROM [msdb].[dbo].sysjobsteps
  386.  
  387. --sysjobstepslogs 表 包含所有 SQL Server 代理作业步骤的作业步骤日志,这些作业步骤配置为将作业步骤输出写入表中
  388.  
  389. SELECT * FROM [msdb].[dbo].sysjobstepslogs
  390.  
  391. ---Sql Server 查看所有存储过程或视图的位置及内容 涂聚文 Geovin Du
  392. select a.name,a.[type],b.[definition] from sys.all_objects a,sys.sql_modules b
  393. where a.is_ms_shipped=0 and a.object_id = b.object_id and a.[type] in ('P','V','AF')
  394. order by a.[name] asc
  395. GO
  396. SELECT * FROM Sys.Sql_Modules
  397. GO

  

sql server:查詢系統表的更多相关文章

  1. oracle系統表、數據字典介紹與日常問題診斷

    oracle系統表.數據字典介紹與日常問題診斷 數據字典是由唯讀的table和view組成的,產生於$oracle_home\rdbms\admin\catalog.sql.裡面儲存Oracle資料庫 ...

  2. SQL Server中查询数据库及表的信息语句

    /* -- 本文件主要是汇总了 Microsoft SQL Server 中有关数据库与表的相关信息查询语句. -- 下面的查询语句中一般给出两种查询方法, -- A方法访问系统表,适应于SQL 20 ...

  3. Sql Server中不常用的表运算符之UNPIVOT

    在Sql Server中不常用的表运算符之PIVOT中,介绍了PIVOT表运算符,现在来说说与之相对应的另一个表运算符UNPIVOT. 从名字可以看出,这个运算符的作用与PIVOT刚好相反,是将一行的 ...

  4. Sql Server中不常用的表运算符之APPLY(2)

    在Sql Server中不常用的表运算符之APPLY(1)中提到,SQL2005中新支持的APPLY的特性:1.可以直接将表表达式(表值函数或者子查询)作为APPLY语句的右表连接左表.2.由于使用A ...

  5. SQL Server查询性能优化——堆表、碎片与索引(二)

    本文是对 SQL Server查询性能优化——堆表.碎片与索引(一)的一些总结.  第一:先对 SQL Server查询性能优化——堆表.碎片与索引(一)中的例一的SET STATISTICS IO之 ...

  6. Sql server 浅谈用户定义表类型

    1.1 简介 SQL Server 中,用户定义表类型是指用户所定义的表示表结构定义的类型.您可以使用用户定义表类型为存储过程或函数声明表值参数,或者声明您要在批处理中或在存储过程或函数的主体中使用的 ...

  7. SQL Server 2008 查询所有用户表

    SQL Server 2008 查询所有用户表的T-SQL语句是: SELECT * FROM sysobjects WHERE [xtype] = 'U' 或者是: SELECT * FROM sy ...

  8. SQL Server中的临时表和表变量

    SQL Server中的临时表和表变量 作者:DrillChina出处:blog2008-07-08 10:05 在SQL Server的性能调优中,有一个不可比拟的问题:那就是如何在一段需要长时间的 ...

  9. 【转载】SQL Server - 使用 Merge 语句实现表数据之间的对比同步

    原文地址:SQL Server - 使用 Merge 语句实现表数据之间的对比同步 表数据之间的同步有很多种实现方式,比如删除然后重新 INSERT,或者写一些其它的分支条件判断再加以 INSERT ...

随机推荐

  1. VRRP&HSRP

    HSRP 活跃路由器和备用路由器都会向组播地址 224.0.0.2  UDP 1985  端口发送hello消息. VRRP组中有一台主用路由器(Master),以及一台或多台备用路由器(Backup ...

  2. 关于hermes与solr,es的定位与区别

    Hermes与开源的Solr.ElasticSearch的不同 谈到Hermes的索引技术,相信很多同学都会想到Solr.ElasticSearch.Solr.ElasticSearch在真可谓是大名 ...

  3. Ubuntu 16.04 安装 arm-linux-gcc 交叉编译工具

    工作需要,最近在编译linux嵌入式内核时,需要安装arm-linux-gcc交叉编译,实际上,安装这个交叉编译器的难度没啥.不过,这里有些问题还是值得我去思考和记录下来的. 这个系统的上的编译器用的 ...

  4. 2-4 完整Todolist案例

    在2-3 的基础上继续,综合前面的Todolist编写一个完整的案例,实现基本的输入内容,添加内容,点击删除内容 稍微讲解54行代码 splice()的用法

  5. Linux入门搭建可视化桌面环境小合集virtual box centOS7.10

    常用命令: 关联主机与虚拟机(方便文件共享): # sudo mount -t vboxsf share(主机文件夹名) /usr/share(虚拟机内自创) Linux shell进入root模式: ...

  6. 导入Excel文件

    选择文件 #region //获取路径 string FilePath = ""; //选择文件 OpenFileDialog openFileDialog1 = new Open ...

  7. 【转】浮点数与IEEE 754

    http://www.cnblogs.com/kingwolfofsky/archive/2011/07/21/2112299.html 浮点数 1.   什么是浮点数 在计算机系统的发展过程中,曾经 ...

  8. 【Java基本功】聊聊抽象类和接口的区别

    1 抽象类一般会实现一部分操作,并且留一些抽象方法让子类自己实现,比如Stringbuffer和Stringbuilder的父类abstractStringbuilder. 2 接口一般指一种规定,比 ...

  9. jquery插入,复制、替换和删除节点

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  10. 深度学习论文翻译解析(三):Detecting Text in Natural Image with Connectionist Text Proposal Network

    论文标题:Detecting Text in Natural Image with Connectionist Text Proposal Network 论文作者:Zhi Tian , Weilin ...