日期:2014-05-16  浏览次数:20401 次

配置ODBC数据源——找不到SA账户

        SQL Server的总结还没有做完,但剩下的我想慢慢来了。今天开始打算进行学生信息管理系统的实战。不知道就是想实战了,不动手学习不踏实。打开刚从师父那儿拿到的学生信息管理系统,有点庞大,此时我的胸腔里有一股嗜血的冲动,这是菜鸟的心情!把整个系统看了看,然后试运行,发现连数据库都还没有。于是照着视频资料先建立数据库,进而配置ODBC数据源。“问题”在此恭候我多时,后来发现这是我当初给自己挖的坑。这不是责怪自己,因为不可否认的所有问题对于菜鸟而言都是一笔财富,所以来者不拒啊。

        问题是这样的,在配置ODBC的时候到如下作图步骤时,选择使用用户登录ID和密码的SQL Server验证。但当我输入SA作为登入ID时出现的一个警告如下右图(如果密码错误的话也一样的提示):

         于是就百度了一下“SQL Server错误:18456”说是得在操作系统中建立一个SA的账户并分配使用SQL Server的权限。操作之后发现还是不行!于是接着查什么是SA,SA = super administrator 超级管理员账户,拥有所有权限。由于其安全性不是很好据说,所以建议禁用。而我的问题最终是由于我的SQL Server中没有这个账户,就是被禁用了。先开始很很纳闷怎么就被禁用了呢,原来是我在安装SQL Server时选择的验证模式是windows身份验证而非SQL Server和windows身份验证模式。而在Windows模式下所以SA账户默认的禁用了。下面就说说如何解决这个问题,有两种方法:

        第一种    使用SQL Server Management Studio                                             

          先更改安全身份验证模式

1.在 SQL Server Management Studio 的对象资源管理器中,右键单击服务器,再单击“属性”。

2.在“安全性”页上的“服务器身份验证”下,选择新的服务器身份验证模式,再单击“确定”。

3.在 SQL Server Management Studio 对话框中,单击“确定”以确认需要重新启动 SQL Server。(一定注意重启,不然不成功)

4.在对象资源管理器中,右键单击您的服务器,再单击“重新启动”。 如果运行有 SQL Server 代       理,则也必须重新启动该代理禁用了。

        启用 sa 登录名

1.在对象资源管理器中,依次展开“安全”、“登录名”,右键单击“sa”,再单击“属性”。

2.在“常规”页上,您可能需要为登录名创建密码并确认该密码。

3.在“状态”页上的“登录”部分中,单击“启用”,然后单击“确定”。

         第二种方法    使用T-SQL语句

1.在对象资源管理器中,连接到数据库引擎的实例。

2.在标准菜单栏上,单击“新建查询”。

3.代码如下,然后单击“执行”。

——这个语句没有试过暂时
ALTER LOGIN sa ENABLE ;
GO
ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>' ;
GO

     至此,大功告成,学生信息管理系统的第一个问题搞定!

8楼lishuangzhe7047昨天 19:37
发现问题,解决问题嘛
Re: zhuojiajin昨天 19:37
回复lishuangzhe7047n不是发现的,是它卡着我了!
7楼liutengteng130昨天 16:58
[e03]加油。
Re: zhuojiajin昨天 19:03
回复liutengteng130n嗯哪!
6楼