C#中使用SQLServer的方法
我是C#的初学者。对操作数据库不甚明了。请问这段asp所实现的功能,在C#中该如何实现呢?我用的是SQLServer,WinForm开发。(注意不是asp.net)rs....
我是C#的初学者。对操作数据库不甚明了。请问这段asp所实现的功能,在C#中该如何实现呢?我用的是SQLServer,WinForm开发。(注意不是asp.net)
rs.open "Select * from BaseURI Where URI=" & URI,conn,3,3
if rs.EOF then
rs.addnew
end if
rs("URI")=URI
rs.update
也就是如何在表中查找是否有指定值的行,有就更新,没有则新建。
另外,如果程序中使用多线程,是不是可以并发访问SQLServer?还是要用到LOCK或Monitor.Enter()
非常感谢iceseaboy!感谢语写不下,所以放这了。呵呵
ADO.NET怎么这么烦琐,最少要建两个Connection,两次查询.这会不会影响性能?
另外我后面提的多线程问题还没弄明白。希望知道的朋友给我在评论里讲一下。 展开
rs.open "Select * from BaseURI Where URI=" & URI,conn,3,3
if rs.EOF then
rs.addnew
end if
rs("URI")=URI
rs.update
也就是如何在表中查找是否有指定值的行,有就更新,没有则新建。
另外,如果程序中使用多线程,是不是可以并发访问SQLServer?还是要用到LOCK或Monitor.Enter()
非常感谢iceseaboy!感谢语写不下,所以放这了。呵呵
ADO.NET怎么这么烦琐,最少要建两个Connection,两次查询.这会不会影响性能?
另外我后面提的多线程问题还没弄明白。希望知道的朋友给我在评论里讲一下。 展开
展开全部
1、sqldmo
SQLDMO是操作SQLServer的理想的方式,如果您的数据库是SQLServer就可以考虑使用这种方式。在C#中使用SQLDMO需要添加SQLDMO的引用,然后在当前的文件中using SQLDMO;即可以使用SQLDMO。SQLDMO的对象模型大家可以在SQLServer的帮助中获得。
private void GetTabels_DMO(string strServerName,string strUser,string strPWD,string strDatabase)
{
SQLDMO.SQLServer Server = new SQLDMO.SQLServerClass();
//连接到服务器
Server.Connect(strServerName,strUser,strPWD);
//对所有的数据库遍历,获得指定数据库
for(int i=0;i<Server.Databases.Count;i++)
{
//判断当前数据库是否是指定数据库
if(Server.Databases.Item(i+1,"dbo").Name ==strDatabase)
{
//获得指定数据库
SQLDMO._Database db= Server.Databases.Item(i+1,"dbo");
//获得指定数据库中的所有表
for(int j=0;j<db.Tables.Count;j++)
{
MessageBox.Show(db.Tables.Item(j+1,"dbo").Name);
SQLDMO是操作SQLServer的理想的方式,如果您的数据库是SQLServer就可以考虑使用这种方式。在C#中使用SQLDMO需要添加SQLDMO的引用,然后在当前的文件中using SQLDMO;即可以使用SQLDMO。SQLDMO的对象模型大家可以在SQLServer的帮助中获得。
private void GetTabels_DMO(string strServerName,string strUser,string strPWD,string strDatabase)
{
SQLDMO.SQLServer Server = new SQLDMO.SQLServerClass();
//连接到服务器
Server.Connect(strServerName,strUser,strPWD);
//对所有的数据库遍历,获得指定数据库
for(int i=0;i<Server.Databases.Count;i++)
{
//判断当前数据库是否是指定数据库
if(Server.Databases.Item(i+1,"dbo").Name ==strDatabase)
{
//获得指定数据库
SQLDMO._Database db= Server.Databases.Item(i+1,"dbo");
//获得指定数据库中的所有表
for(int j=0;j<db.Tables.Count;j++)
{
MessageBox.Show(db.Tables.Item(j+1,"dbo").Name);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
支持回答者:iceseaboy - 秀才 二级 4-17 17:37
强烈鄙视234楼的
强烈鄙视234楼的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
感觉 iceseaboy 的挺像回事的啊.....
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询