- 博客(199)
- 资源 (7)
- 收藏
- 关注
原创 sql server 修改字段not null到null
varchar(20) 是原的字段类型,不需要修改,但是必须要加上(sql 格式要求)一个亿的数据量,瞬间就执行完成了,貌似是没有锁表修改数据的操作。今天在修改一个列的约束从not null 修改成null。
2026-03-24 15:10:37
40
原创 oracle恢复单个文件
startup mountrestore database datafile xx;recover databaseswitch all datafilealter database open;
2026-03-17 09:15:02
17
原创 rman 恢复控制文件
相当于执行recover database using backup controlfile,然后选择AUTO应用所有归档,但不输入redo文件进行应用。从rman备份中恢复的控制文件,scn比现有的datafile小,所以要先resotre database,再recover。问题1.如果是从其他的时间点恢复的控制文件,scn号比datafile大,是可以直接recover吗?当于以旧的redo中的scn为恢复终点,不应用归档日志,会丢失所有数据。2, 通过语句重新创建的控制文件,如何恢复?
2026-03-16 11:13:16
43
原创 mysql 修改索引等待
都会是一直等待的状态,通过show processlist查询为 2个session 的状态均为: Waiting for table metadata lock。在select 语句未完成之前,索引操作是一直等待的状态。在sesseion1。
2026-03-04 15:26:05
40
原创 使用SQL判断 数字是否有三位小数
如果余数是0,则只有2个小数,如果不是0,则存在余数小数位有3位小数。先乘以100,去掉小数位的前2位,然后除以1,取余数是否为0。
2026-03-03 15:32:04
30
原创 sql server 索引选择
字段 c01,c02 ,c03 ,c04 ,..................字段c01,c02是联合主键,c01是前导列,c03有索引idx01 ,c04没有索引 ,还有其他字段的索引 执行以下sql。有可能sql server 在评估执行计划时,根据indx01索引来执行,成本是最小的,所有用了index01来查询 ,执行计划竟然是根据索引indx01 来查询表 ,而不是全表扫描,在分析了索引索引之后,发现indx01 这个索引空间大小是最小的,在之前的处理问题中,有表T01,
2026-02-02 08:59:39
65
原创 sql server 表被另外一张表锁
dbo].[t01] 表的更新在where 条件中的字段是没有索引的,如果更新,无论走哪个索引的执行计划,都会有FULL表的锁,这个时候再执行其他条件不提交事务,建议在where条件增加索引,即使where条件是相同的列,不修改相同的记录,是不会出现U(更新)锁的。第一个进程修改数据没有提交,一直在等待,并且where条件是没有索引的,会锁全表。而另外一个事务要更新表 [dbo].[t01] ,就会一直等待,就会出现锁的情况。
2026-01-29 11:33:39
148
原创 Optimizing Your Query Plans with the SQL Server 2014 Cardinality Estimator
https://learn.microsoft.com/sv-se/previous-versions/dn673537(v=msdn.10)
2026-01-05 16:16:35
80
原创 SQL SERVER 测试 增加表字段的值的长度,表的行数据是否会发生行迁移 ?
SQL SERVER 测试 增加表字段的值的长度,表的行数据是否会发生行迁移?的pageid 发生了变化,行所有的数据都迁移到新的pageid了。通过DBCC PAGE ,发现 原来 a=1699585。
2025-11-24 08:34:05
227
原创 sql server 查看表所在的文件
通过函数 sys.dm_db_database_page_allocations。通过查看索引,所在的文件。
2025-11-20 15:04:37
114
原创 mysql查看innodb_buffer_pool_size
第一条语句显示不出来 innodb_buffer_pool_size。一个看参数,一个看状态。
2025-11-04 08:39:42
326
原创 查看用户创建和权限的定义语句
show create user 'username'@'ip地址'SHOW GRANTS FOR 'username'@'ip地址'
2025-11-03 14:41:30
114
原创 sql server 备份恢复全备和日志备份时间相近恢复失败
的依据竟然是根据上上次的全备来的,导致恢复失败,后来调整了全备的时间,在恢复可以了。因为日志备份和全备的时间相离太近,导致。43120 这条日志备份的。在数据库恢复的时候提示。
2025-10-31 15:58:08
411
原创 sql server 如何比较存储过程或表的结构不同
右键源库(以这个数据为本,就是这个数据的结构不变),点击架构比较 ,选择目标库(就是要把结构改成和源库一样的),然后比较,可以显示表,存储过程等不同,可以点击生产脚本,并查看脚本。使用Microsoft Visual Studio Community 2022 (64 位) 工具,连接到sql server。
2025-09-28 10:00:31
135
原创 oracle 使用CONNECT BY PRIOR 提示ORA-01436
通过以上语句改写,发现有2条数据的 PARENT_ITME_KEY 和 CHILD_ITME_KEY 互为循环,所以才出现以上问题,改写sql语句或者修改数据解决。connect_by_iscycle 字段和nocycle 关键字配合使用,有nocycle才可以使用 connect_by_iscycle。使用connnect by 语句时提示 ORA-01436: connect by loop in user data。
2025-09-05 13:30:15
394
原创 oracle 恢复
- 完成后正常打开:ALTER DATABASE OPEN RESETLOGS;(不完全恢复必用RESETLOGS)-- 检查数据文件头SCN (V$DATAFILE_HEADER)-- 检查控制文件记录的当前SCN (V$DATABASE)数据文件头的 SCN,说明控制文件已过时,恢复时。若控制文件的 SCN。
2025-07-03 16:56:36
329
原创 sql server 序列
drop SEQUENCE DecSeq create SEQUENCE DecSeq AS bigint START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 2000 CYCLE CACHE 3 ; select ( NEXT VALUE FOR DecSeq) ,a.* from t_table adeclare @i int SET @i = NEXT
2025-06-23 14:40:01
226
原创 sql server 查询每个数据库的文件大小
select name,size/128.0 FileSizeInMB from master.sys.database_files;select 'select '''+name+''' as dbname ,size/128.0 FileSizeInMB from '+name+'.sys.database_files union all ' from sys.databases
2025-06-17 11:23:31
217
原创 十六进制转字符
declare @endlsn binary(10); print CONVERT(VARCHAR(MAX),@endlsn,2) print CONVERT(VARCHAR(MAX),@endlsn,1) print CONVERT(VARCHAR(MAX),@endlsn,0)
2025-05-15 10:37:56
142
原创 SQL 优化
后来通过增加 option ( RECOMPILE) ,也可以减小执行时间。通过改变参数的值执行时间有显著的差异,原因是不同的参数的行数不一样。今天有个sql的执行计划,预估行数和实际行数差异比较大。是通过参数 @var1 条件来检索的。
2025-05-09 16:57:51
128
原创 sql server 开启cdc报事务正在执行
执行多次仍然如此,开启cdc的存储过程是sys.sp_cdc_enable_db;查询了一下网络,给出的方法1.是手动增加cdc用户到db_ower,但是查看官方文档,在开启cdc之前,cdc用户是不允许存在的,查询有很多锁,但是一些ix,s ,object一些数据锁应该不会影响开启啊,怀疑是MEATADATA的锁导致的不能开启cdc,是有很多meata锁的,查询对应的session_id正在执行什么。当meate锁很少的时候,再次执行开启sys.sp_cdc_enable_db,执行成功。
2025-04-25 16:49:47
322
原创 sql server tempdb库的字符集和用户库字符集不一样
对比2个表字段字符集都是"Latin1_General_CI_AS",但是tempdb库的字符集是"Chinese_PRC_CI_AS",没办法,只能重新把数据库协助重新安装了。无法解决 equal to 运算中 "Latin1_General_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。执行2个表用not in 关联,但是提示这个错误。消息 468,级别 16,状态 9,第 74 行。
2025-04-22 13:47:24
252
原创 mysql collation_database 参数
这个参数的值,但是不能其他,错误日志提示不是有效的参数,查看官方文档后,显示这个参数不是在 Option File 文件里面的参数。今天在my.cnf 文件中设置。
2025-04-18 14:58:14
450
原创 mysql 查看内存使用
Buffer pool size buffer的页数 ,一个页的默认大小是16K。memory allocated 内存 单位bytes。查看一个page_size 的大小。
2025-04-15 16:36:14
430
原创 sql server 预估索引大小
因此,索引行的总大小 = 8(索引键) + 8(聚集索引键) + 4(行头) =问题: 如果建立一个数据类型是datetime的索引,需要多大的空间?如果需要更精确的估算,可以使用 SQL Server 提供的工具(如。通过实践,索引在7.45G,可见预计的还是很准确的。类型的聚集索引,建立一个。如果建立一个数据类型是。)查看实际索引大小。
2025-04-15 15:22:41
1104
centos6.5 安装orancle 11g
2017-05-09
SQLServer2008Reporting 快速提升系列课程
2022-11-10
powerbuilder 编程例子
2009-12-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅