SQL Server 2008 评估期已过的解决办法

该日志由 samool 发表于 2020-10-26 15:08:00

今天上班一打开SQL Server,就报了下面这个问题

请输入图片描述

很显然,SQL Server 试用期到了,微软提醒我们购买。大家经济允许的话,还是要买正版。

对于我们这些暂时无力承担正版费用的屌丝群体怎么办呢?

显然,重装不是一个好的办法。

SQL Server软件装起来很麻烦,还需要一段时间。况且光卸载老版本就是个问题,很难卸载干净。卸载加安装,半天就过去了。

通过百度,找到了一些解决方案,通过自身的具体实践,终于把问题解决了,特将问题与解决方法记录下来,给遇到同样问题的伙伴提供一种解决方式,也方便自己日后查看。

1.开始-->所有程序-->MicrosoftSQL Server 2008-->配置工具-->SQL Server 安装中心

请输入图片描述

2.打开SQL Server安装中心(64位) 点击维护-->版本升级,

请输入图片描述

请输入图片描述

如果提示失败1,电脑没有重启,这个时候就需要我们手动进行重启,重新打开电脑后,从步骤1开始;

接着按照提示一直点下一步,到产品密钥的时候输入

Microsoft SQL Server 2008 R2序列号密钥

开发版32位:MC46H-JQR3C-2JRHY-XYRKY-QWPVM
开发版64位:FTMGC-B2J97-PJ4QG-V84YB-MTXX8

工组版:XQ4CB-VK9P3-4WYYH-4HQX3-K2R6Q
WEB版:FP4P7-YKG22-WGRVK-MKGMX-V9MTM

数据中心版32位:PTTFM-X467G-P7RH2-3Q6CG-4DMYB
数据中心版64位:DDT3B-8W62X-P9JD6-8MX7M-HWK38

企业版32位:R88PF-GMCFT-KM2KR-4R7GB-43K4B
企业版64位:GYF3T-H2V88-GRPPH-HWRJP-QRTYB

标准版32位:CXTFT-74V4Y-9D48T-2DMFW-TX7CY
标准版64位:B68Q6-KK2R7-89WGB-6Q9KR-QHFDW

输入密钥之后进行升级,升级完成后,再次打开SQL Server。如果还是提示评估期已过,进行如下操作:

修改注册表: win键 + r 打开运行界面 输入regedit 就能打开注册表页面

请输入图片描述

找到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MicrosoftSQL Server\100\ConfigurationState里的“CommonFiles”值改成3,在重新执行上面的操作。

sql server 2008安装需要一直重启的解决办法:

同样打开注册表

找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 位置

然后在右边窗口右击PendingFileRenameOperations,选择删除,然后确认

该日志标签: 微软, , 正版, sql, 升级, 电脑, 软件, 注册, 工具, 经济, 开发, 方法, 程序, 运行, 输入, 百度, 安装, 界面, 问题, 数据, 时间, 上班, 企业, 失败, , 时候, 解决, server, 打开, 标准版, 卸载

SQL 批量插入1000条测试数据

该日志由 samool 发表于 2019-04-12 12:21:00

declare @i int;--申明一个整形变量i

set @i = 1;--设置初始值为1

while(@i < 1000)--用while循环给定一个循环结束条件小于1000

begin

insert into T_Kh_SocialAct(客户编号,互动备注) values(1003,'user_no'+cast(@i as varchar));--开始插入

set @i = @i +1;--累加

end;

该日志标签: sql

SQL显示某表的字段名和说明备注

该日志由 samool 发表于 2017-03-20 15:36:00

Select A.name As 字段名,C.value As 说明
From syscolumns A
Inner Join sysobjects B on A.id=B.id
Left Join sys.extended_properties C on A.id=c.major_id and a.colid=C.minor_id Where B.name='User_Order'

该日志标签: sql

sql判断存储过程是否存在

该日志由 samool 发表于 2016-05-18 09:02:00

1 判断数据库教程是否存在
Sql代码
if exists (select * from sys.databases where name = ’数据库名’)
drop database [数据库名] if exists (select * from sys.databases where name = ’数据库名’)
drop database [数据库名]

2 判断表是否存在
Sql代码
if exists (select * from sysobjects where id = object_id(N’[表名]’) and OBJECTPROPERTY(id, N’IsUserTable’) = 1)
drop table [表名] if exists (select * from sysobjects where id = object_id(N’[表名]’) and OBJECTPROPERTY(id, N’IsUserTable’) = 1)
drop table [表名]

阅读剩余部分...

该日志标签: 存储过程, sql

SELECT INTO 和 INSERT INTO SELECT 两种表复制语句

该日志由 samool 发表于 2014-12-04 13:26:37

Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。

  1.INSERT INTO SELECT语句

  语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1

  要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。示例如下:

2.SELECT INTO FROM语句

  语句形式为:SELECT vale1, value2 into Table2 from Table1

  要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。示例如下:

该日志标签: sql

mssql查询所有表和所有表记录数

该日志由 samool 发表于 2014-04-09 08:27:22

select object_name(id) as tablename,rows from sysindexes
where id in (select id from sysobjects where xtype='U') and indid in (0,1)

该日志标签: sql, 数据库

SQL优化-关于max degree of parallelism 选项

该日志由 samool 发表于 2014-02-07 11:27:05

当 SQL Server 2005 在具有多个微处理器或 CPU 的计算机上运行时,它将为每个并行计划执行检测最佳并行度(即运行一个语句所使用的处理器数)。您可以使用 max degree of parallelism 选项来限制并行计划执行时所用的处理器数。如果默认值为 0,则使用所有可用的处理器。将 max degree of parallelism 设置为 1 以取消生成并行计划。将该值设置为大于 1 的数字(最大为 64)来限制执行单个查询时所用的最大处理器数。如果指定的值比可用的处理器数大,则使用实际可用数量的处理器。如果计算机只有一个处理器,则将忽略 max degree of parallelism 值。

阅读剩余部分...

该日志标签: sql, 优化

SQL2008数据库优化常用脚本

该日志由 samool 发表于 2014-02-07 11:11:00

--查询某个数据库的连接数
select count(*) from Master.dbo.SysProcesses where dbid=db_id()

--前10名其他等待类型
SELECT TOP 10 *
from sys.dm_os_wait_stats
ORDER BY wait_time_ms DESC

SELECT *FROM sys.dm_os_wait_stats WHERE wait_type like 'PAGELATCH%'
OR wait_type like 'LAZYWRITER_SLEEP%'

--CPU的压力
SELECT scheduler_id, current_tasks_count, runnable_tasks_count
FROM sys.dm_os_schedulers
WHERE scheduler_id < 255

阅读剩余部分...

该日志标签: sql, 优化

SQL查询数据库表名、表的列名

该日志由 samool 发表于 2013-12-16 15:24:50

--读取库中的所有表名
select name from sysobjects where xtype='u'

--读取指定表的所有列名
select name from syscolumns where id=(select max(id) from sysobjects where xtype='u' and name='表名')
获取数据库表名和字段
sqlserver中各个系统表的作用
    sysaltfiles      主数据库                  保存数据库的文件
syscharsets      主数据库                  字符集与排序顺序
sysconfigures    主数据库                  配置选项
syscurconfigs    主数据库                  当前配置选项
sysdatabases      主数据库                  服务器中的数据库
syslanguages      主数据库                  语言
syslogins        主数据库                  登陆帐号信息
sysoledbusers    主数据库                  链接服务器登陆信息
sysprocesses      主数据库                  进程
sysremotelogins主数据库                  远程登录帐号

syscolumns        每个数据库                列
sysconstrains    每个数据库                限制
sysfilegroups    每个数据库                文件组
sysfiles          每个数据库                文件
sysforeignkeys 每个数据库                外部关键字
sysindexs        每个数据库                索引
sysmenbers        每个数据库                角色成员
sysobjects        每个数据库                所有数据库对象
syspermissions 每个数据库                权限
systypes          每个数据库                用户定义数据类型
sysusers          每个数据库                用户

//
用什么方法可以得到一个表中所有的列名。SQl语句。
select      列名=name      from      syscolumns      where      id=object_id(N'要查的表名')

该日志标签: sql, 数据库, 字段, 表名

二维表实现三级组织视图

该日志由 samool 发表于 2012-11-14 23:54:22

Select 流水号,类型,名称,
营业厅=
(
  case when 类型='网点' then (select  name from aipu_BigType where sid=v_area.上级编号)
  end
),
分公司=
(
  case when 类型='营业厅' then (select  name from aipu_BigType where sid=v_area.上级编号)
       when 类型='网点' then (select name from aipu_BigType where sid=(select code from aipu_BigType where sid=v_area.上级编号))
  end
)

,编号,上级编号,创建时间,修改时间,修改者 from V_area

该日志标签: sql, 视图, 组织