日期:2014-05-18  浏览次数:20479 次

有几个关于.net2.0连接sql2000的问题,请大家帮一下忙!
如果默认为sql2005时要更改为sql2000时要进行下列步骤:
  首先:运行Microsoft.NET\Framework\v2.0.50727\aspnet_regsql.exe设置好。
那第一个问题就是这里设置的数据库名称默认是aspnetdb,我可不可以设置成为我以后程序使用的数据库名(如abc)?
  然后:在web.config中增加
 <connectionStrings>
   <remove name="LocalSqlServer" />
   <add name="LocalSqlServer" connectionString="Data Source=主机;Initial Catalog=数据库名;Persist Security    Info=True;User ID=sa;Password=xxxxx"
   providerName="System.Data.SqlClient" />
   </connectionStrings>
第二个问题是:如果上面第一步设置数据库名为aspnetdb那这里的Initial Catalog我认为是aspnetdb了,如果上一步设为我自己的数据名那是不是Initial Catalog=abc了,我的想法正确否?
第三个问题:如果我使用vs2005中自带的login控件进行验证,那我要在那里设置可以登陆的用户名及密码?另外是不是做了前面两步就不用管连接sql2000的问题了?
第四个问题:如果已解决了登陆问题那在网页中还要用到sql2000的abc数据库中的数据时是不是也不用管连接的问题了?如果不用管,那应如何做?(例如我要执行一条update test set itemtest="成功"这条语句该如何做?)[/color]
嘿嘿,刚开始用asp.net,如果问题有小白请多多见谅!谢谢!

------解决方案--------------------
1,2你都知道了 !就是那样
3,首先你要有个登陆要用到的表 !
表字段至少存在用户和密码
----------------------------
另外是不是做了前面两步就不用管连接sql2000的问题了? 
这个倒不是 !你要看你的服务管理器是否有运行 !数据库是否保持连接着 !
-----------------------
总之不管查询,添加,删除 你的数据库肯定要保持连接拉 !!
---------------------------
LZ可以尝试做个小例子,比如:登陆
或许这样的收获比你这样问效果好!遇到不明白的找资料或者问他人 ....
这样效率会好点 !!
呵呵....
------解决方案--------------------
1. aspnet_regsql -d "数据库名" (你可以aspnet_regsql /?察看所有参数)
2. 当然是这样。
3. 用System.Web.Security.SqlMembershipProvider.CreateUser方法 或者托个CreateUserWizard控件。
4. 不是。如果要获取你的abc数据库中其他数据就要用ConfigurationManager.ConnectionStrings["LocalSqlServer"].ConnectionString;来返回个连接字符串。用这个字符串来创建个SqlConnection,然后创建命令....

注意,以上都是基于.net2.0里面默认的SqlMembershipProvider的,因此数据库格式是微软固定的。如果你想用自己设计的数据库就要从MembershipProvider,继承一个类,重写里面的20几个方法。具体可以查下 Provider模型 。.net2.0中大量使用了Provider模型,该模型解除了客户代码对特定存储的依赖。