zoukankan      html  css  js  c++  java
  • Microsoft SQL Server 2005 中相关问题的解决办法

     

    Microsoft SQL Server 2005 中无法创建“数据库关系图”的解决办法 

    Microsoft SQL Server 2005 数据库中,经常会出现无法创建“数据库关系图”的错误,原因大多是这个数据库是附加,权限不够的关系。

    解决办法:

    选择数据库名 —> 右键 —> 属性 —> 选择“文件”,将看到右边的“所有者”,选择“...”按钮将弹出对话框 —> 选择“浏览(B)...”按钮—> 在匹配的对象中选上“[NT AUTHORITY\SYSTEM]”即可。

    Microsoft SQL Server 2005 中数据乱码的解决办法
    在Microsoft SQL Server 2005 数据库的数据表中,所有汉字都显示成了“???”乱码,问题原因出现在数据库的设置上。

    解决办法:

    选择数据库名 —> 属性 —> 选项 —> 排序规则,修改成“CHINESE_PRC_CI_AI”就可以了

    注意:
    在修改数据库的排序规则后,并非修改所有字段,比如"TrueName"就没有修改,有些预留关键字可能要手动修改。

    修改某一字段的排序规则:

    在相应字段的“列属性”中 —> 排序规则 —> 修改成“Chinese_PRC_CI_AS”即可。

    附加:

    若是你不想修改数据库属性,而在Microsoft SQL Server 2005 数据库录入数据时:

    不能输入中文,使用SQL语句插入数据后,查看表中却显示成了“???”乱码。

    解决办法:

    数据列类型定义为以N开头,比如:nchar,nvarchar,ntext,N是national的缩写,代表unicode字符。

    原来这样的语句:

     insert into table1 values('中文');

     

    就改正一下: 

     insert into table1 values(N'中文'

     

     

    SQL Server 2005 导出错误:
    在将Excel 导入sql server 2005数据库时, 提示:"标题: SQL Server 导入和导出向导错误 0xc00470fe: 数据流任务: 产品级别对于 组件“源 - Sheet1$”(1) 而言不足。"
    原因:      应该是没有安装SQL Server Integration Service(SSIS).
    解决方法:安装SQL Server Integration Service(SSIS).

    附加:
    数据类型为text的数据导出可能报错!
    数据字段名为中文也会产生数据导出报错!
    字段类型问题:把需要导入数据的那个表的字段类型改为varchar型的,导完数据后一定记得再改回来。

    数据表中的某字段的值里包含了分隔符,这样导致另一个字段出现该问题。更改分隔符。


    SQL Server 2005 文本输出格式设置:

    工具—> 选项—> 查询结果—> SQL Server—> 以文本格式显示结果在右边设置即可,关闭原来的查询窗口,点击“新建查询”。



    由于字段类型导致的数据表联接报错

    不能在 ntext、text 或 image 列上直接联接表,但可以使用substring 在 ntext、text 或 image 列上间接联接表。

    例如:SELECT * FROM t1 JOIN t2 ON substring(t1.textcolumn, 1, 20) = substring(t2.textcolumn, 1, 20)

              // 可对表 t1 和 t2 中每个文本列的前 20 个字符进行两表内部联接。

    此外,另一种可以采用的比较两个表中的 ntext 或 text 列的方法是用 WHERE 子句比较列的长度。

    例如:WHERE datalength(p1.pr_info) = datalength(p2.pr_info)


    SQL Server 2005 附加数据库失败,错误: 3415

    这个问题从根本上说,应该是一个sa用户权限的问题,在sql2005里,sa不具有某些操作这样的权限,那么如何解决呢。除了更改sa的权限外,可以使用windows身份验证登陆,做完需要的操作之后,再重新使用sa 帐户登陆,这样避开了这个错误的产生了。

    下面是网上的一个解决方法:
         附加数据库 对于 服务器“***”失败。 (Microsoft.SqlServer.Smo)
         无法升级数据库 ‘******’,因为它是只读的,或者具有只读文件。请将数据库或文件设为可写,然后重新运行恢复操作。 (Microsoft SQL Server,错误: 3415)
         查看了数据库文件,它们并没有只读属性,在 SQL Server 2000 中附加一切正常。

    其实这个错误并不是文件只读的问题,严格说应该是一个“权限”的问题,当前的 SQL Server 登录帐号没有对要附加文件的可写权限,就会出现上述“只读”的提示,解决办法有以下几种:
        * 将要附加的文件拷贝到 SQL Server 默认的 Data 目录,此时附加就会成功;
        * 在登录验证时,选择“Windows 身份验证”,而不是“SQL Server 身份验证”,即便你的登录帐号是 sa;
        * 如果一定要使用“SQL Server 身份验证”,请更改登录帐号的权限使其对要附加文件有完全操作权限;
        * 将 SQL Server 服务的帐户登录身份由 Network Service 改为 Local Service;


    在连接到SQL Server2005时,在默认的设置下SQL Server不允许进行远程连接可能会导致失败的解决办法

    Sql Server2005 ,我们远程连接无法连接上的用这3步就可以了。

    1.在"外围配置"工具把"允许TCP/IP和命名管道"勾上,当然"仅TCP/IP"也可以。


                                          图1:外围应用配置器中选择TCP/IP或者named pipes;

           其中named pipes就是类似进程间通讯用的东西,(说错了请大家指正)可以单独选择'仅选择TCP/IP';
       

    2.然后从"配置管理器"中找到"...2005网络配置"->"网络协议"->"TCP/IP"查看里面的端口号,默认是1433,可以改成自己喜欢的.



                                     
    图2:找到系统默认对应的TCP端口号,可以修改成自己喜欢的
     

    3.在相应的防火墙新增个例外,比如默认的1433这样就可以远程连接了.

    图3:在相应防火墙中新增一个在'第二步'中设置的TCP端口号,这里以XP系统自带的防火墙为例

         通过以上三步就可以了...刚开始自己也是一头雾水,不过SQL Server2005弹出的错误提示可以有很大的帮助.

  • 相关阅读:
    javaweb消息中间件——rabbitmq入门
    virtual box 桥接模式(bridge adapter)下无法获取ip(determine ip failed)的解决方法
    Apache Kylin本地启动
    git操作
    Java学习总结
    Java中同步的几种实现方式
    hibernate exception nested transactions not supported 解决方法
    vue 中解决移动端使用 js sdk 在ios 上一直报invalid signature 的问题解决
    cookie 的使用
    vue 专门为了解决修改微信标题而生的项目
  • 原文地址:https://www.cnblogs.com/xugang/p/1256291.html
Copyright © 2011-2022 走看看