MSSQL导入数据迁移时遇到的几个问题

2020-05-24 14:44 来源:未知 作者:mas 责编:mas 评论:

1.当sql server出现当 MUST_CHANGE 为 ON (开)时

取消账号强制策略时出现错误
当 MUST_CHANGE 为 ON (开)时,不能将 CHECK_POLICY 和 CHECK_EXPIRATION 选项设为 OFF (关)。 (Microsoft SQL Server,错误: 15128)
这错误引起的原因是因为勾选了那个"强制实施密码策略",于是..我们必须执行如下语句.先更改一次密码.然后再做其他的操作:

ALTER LOGIN 登录名 WITH PASSWORD= '新密码' ;

执行完这个以后..赶紧把强制密码去掉..万事OK

2.服务器级的urn筛选器无效:筛选器必须为空,或服务器属性必须等于实际的服务器名称

这个问题是出在本地连接还是远程连接上,这个问题可能是由于修改过服务器名称导致的。你可以尝试在本地的服务器和SQL Server上运行以下指令,看看服务器名称是否一致 ->打开CMD,运行:hostname;打开SQL Server,运行SELECT @@SERVERNAME AS 'Server Name' 。
如果不一致的话,需要重命名一下计算机或者SQL Server,看一下这篇文档: https://docs.microsoft.com/en-us/sql/database-engine/install-windows/rename-a-computer-that-hosts-a-stand-alone-instance-of-sql-server

如果只是远程连接有问题的话就可能是DNS的问题,可以参考下这篇博客: http://blog.patricknielsen.net/2011/01/sql-server-invalid-urn-filter-on-server.html

sp_dropserver <old_name>; 

GO 

sp_addserver <new_name>, local; 

GO

  

sp_dropserver <old_name\instancename>; 

GO 

sp_addserver <new_name\instancename>, local; 

GO

3.批量导入数据时保留标识值 (SQL Server)

    在sql server 导入数据的时候,会有一个“启用标示插入”的选项,我不知道有多数据库从业者注意过这个功能,也不知道大家是否都清楚,就我个人而言,很少在意这个按钮。今天在导测试数据的时候,选了这个选项突然间蒙了,经过几番测试。一点小体会。和大家分享。
       首先:“启用标示插入”只对标示列(identity定义的列)起作用。所以如果你要使用这个功能,肯定得有标示列了。我当时狂晕的地方在于,我没在数据库创建表,而是直接在导入数据的过程中创建表,默认的创建表的sql语句是不会定义标示列的,所以,你如果偷懒,请在“编辑sql语句”的按钮中把标示列增加上。如果为非标识列,你导入数据的时候,启用和不启用标识列插入。没有任何意义。
      其次:如果是标示列,你选择了“启用标示插入” 则标识列不自动生成,而是使用外部文件(如excel,txt等)中的导入列,如果你没有选择“启用标示插入”,则标识列自动生成。

【版权声明】本站部分内容来源于互联网,本站不拥有所有权,如果发现本站有侵权的内容,欢迎发送邮件至 benumon@163.com 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

分享:

更多文章

相关文章

关键词:

思韵闪耀,一生受益,思韵科技旗下专业IT技术社区 - 爱编程,爱源码,爱技术,一生受益。

powerby 思韵闪耀    豫ICP备13002912号-2