我在SQL-Server上尝试了以下内容:
create table #TmpLOGSPACE(
DatabaseName varchar(100)
, LOGSIZE_MB decimal(18, 9)
, LOGSPACE_USED decimal(18, 9)
, LOGSTATUS decimal(18, 9))
insert #TmpLOGSPACE(DatabaseName, LOGSIZE_MB, LOGSPACE_USED, LOGSTATUS)
DBCC SQLPERF(LOGSPACE);
Run Code Online (Sandbox Code Playgroud)
...但这会增加语法错误......
任何sugestions?
SQL Server提供[rowguid]类型.我喜欢将其用作唯一主键,以标识要更新的行.如果您转储表并重新加载它,则会显示好处,而不会破坏SerialNo(标识)列.
在分布式数据库的特殊情况下,例如在笔记本电脑上的离线副本或类似的东西,没有其他工作.
你怎么看?开销太大了?
删除unt_uid为null的活动
将是最快的方式,但没有人可以访问数据库/表,直到这个语句完成,所以这是一个禁忌.
我定义了一个游标来在工作期间完成这项任务,但无论如何,对生产力的影响很大.那么如何删除这些记录以保证这个数据库的正常使用呢?
它是32位Win2003上的SQL-2005服务器.第二个问题是:你估计这项工作需要多长时间(6小时或60小时)?(是的,我知道这取决于负载,但假设这是一个小型企业环境)
如果我搜索'Jose',结果为0.如果我搜索'Josè'或'Jôse'也没有结果.
select name from TblName where name = 'Jose' or name = 'Josè' or name = 'Jôse'
Run Code Online (Sandbox Code Playgroud)
我知道更换了吗?:where name like 'Jos?' or name like 'J?se'但这是非常不方便的,谁知道是否没有特殊形式的's'?
我想搜索'Jose'并获取所有变体,并在所有单个字符上包含所有可能的特殊字符; 怎么办?
作为一个例子,我发现了一个简单的计算:
select cast(200.00 as float) + 1908.30 + 170.00 + (-1150.00) + (-1128.30)
Run Code Online (Sandbox Code Playgroud)
作为正常添加,这会导致0.00SQL Server将结果显示为2.27373675443232E-13.
为什么这样,我怎么能避免这个?
我驾驶几年以来在三个位置上进行sql-server2000合并复制.触发器在此数据库中执行了大量工作.我没有遇到任何麻烦.
现在将这些数据库迁移到一个全新的sql2008,我遇到了一些关于触发器的问题.即使合并代理人完成了他的工作,他们也会被解雇.
有没有人在sql2008-server上有这种东西的经验?任何人都可以确认sql2000的不同行为吗?
和平
冰