NET Framework Data Provider for SQL Server
NET Framework Data Provider for SQL Server
类型: .NET Framework Class Library
用法: System.Data.SqlClient.SqlConnection
制造商: Microsoft
更多相关信息 »
返回顶部
标准连接
Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsernameassword=myPassword;
如果您正在使用SQL Server 2008 Express,在指库服务器名的时候,使用服务器名实例名 作为数据源,来连接一个指定的SQL Server实例。
复制代码
标准链接的另一种写法
与上一种连接字符串效果一样,原因是连接字符串里很多关键字是等效的。
Server=myServerAddress;Database=myDataBase;User ID=myUsernameassword=myPassword;Trusted_Connection=False;
复制代码
信任连接
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
复制代码
信任连接的另一种写法
与上一种连接字符串效果一样,原因是连接字符串里很多关键字是等效的。
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True;
复制代码
连接到一个SQL Server 实例
指定数据库实例的键值的语法,与其他SQL Server连接字符串相同。
Server=myServerNametheInstanceName;Database=myDataBase;Trusted_Connection=True;
复制代码
信任连接CE设备
通常CE设备不会验证和登录到一个域。要在CE设备上使用SSPI或者信任连接,需要使用这样的连接字符串:
Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;User ID=myDomainmyUsernameassword=myPassword;
需要注意的是,这种语法只能用户连接CE设备。
更多有关CE设备连接SQL Server的资料 请单击这里
复制代码
通过IP地址连接
Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=myDataBase;User ID=myUsernameassword=myPassword;
DBMSSOCN=TCP/IP. 这是使用TCI/IP通道的方法。Data Source值的最后要指定端口号,1433是SQL Server默认的端口号。
如何确定要使用的网络协议
复制代码
开启MARS功能
Server=myServerAddress;Database=myDataBase;Trusted_Connection=True; MultipleActiveResultSets=true;
MARS: multiple active result sets,即多活动结果集,是.NET Framework 2.0 版中新增的。ADO.NET 1.0 和 ADO.NET 1.1中并不支持此功能。
移植到MARS,简化数据库连接 from DevX.com
复制代码
在本地SQL Server Express实例中附加一个文件
Server=.SQLExpress;AttachDbFilename=c:asdqwemydbfile.mdf;Database=dbname; Trusted_Connection=Yes;
这里需要明确指定Database参数。如果指定的数据库已经被附加,SQL Server将不重新安装数据库文件,而使用已经被附加的数据库作为默认连接。
复制代码
在本地SQL Server Express实例中附加一个文件 与 本地数据路径
Server=.SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;
这里需要明确指定Database参数。如果指定的数据库已经被附加,SQL Server将不重新安装数据库文件,而使用已经被附加的数据库作为默认连接。
复制代码
在本地SQL Server Express实例中使用一个用户实例
这个方法只能在本地SQL Server实例中运行,同时需要通过本地命名管道进行Winodws身份验证。其目的是在本机上,为拥有管理员权限的用户创建一个全部全权限的SQL Server实例。
Data Source=.SQLExpress;Integrated Security=true; AttachDbFilename=|DataDirectory|mydb.mdf;User Instance=true;
在SQL Server中开启用户实例功能才可以使用。开启用户实例功能可以执行: sp_configure 'user instances enabled', '1',关闭用户实例功能可以执行: sp_configure 'user instances enabled', '0'
复制代码
数据库镜像
如果使用ADO.NET或SQL Native Client连接数据库是,当主服务器出现故障时,您的应用程序可以自动连接到伙伴服务器上。这这种语法中,除了主服务器和数据库外,还需要指定伙伴服务器属性。
Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True;
数据库镜像的连接字符串有很多种方法,这里仅仅示例了故障转移功能的语法。您可以在此基础上在连接字符串中设置其他的选项。
复制代码
异步处理
创建一个SQL Server连接, 允许异步请求的ADO.NET对象
Server=myServerAddress;Database=myDataBase;Integrated Security=True;Asynchronous Processing=True;
复制代码
SQL Server Native Client 10.0 OLE DB Provider
类型: OLE DB Provider
用法: Provider=SQLNCLI10
制造商: Microsoft
更多相关信息 »
返回顶部
标准连接
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase;Uid=myUsername; Pwd=myPassword;
如果您正在使用SQL Server 2008 Express,在指库服务器名的时候,使用服务器名实例名 作为数据源,来连接一个指定的SQL Server实例。
复制代码
信任连接
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase; Trusted_Connection=yes;
等效键值对: "Integrated Security=SSPI" == "Trusted_Connection=yes"
复制代码
连接到一个SQL Server 实例
指定数据库实例的键值的语法,与其他SQL Server连接字符串相同。
Provider=SQLNCLI10;Server=myServerNametheInstanceName;Database=myDataBase; Trusted_Connection=yes;
复制代码
提示输入用户名与密码
这种语法稍有些复杂。首先你需要将数据库连接对象的 Prompt 属性值设置成 adPromptAlways 。然后再使用连接字符串连接数据库。
oConn.Properties("rompt" = adPromptAlways
oConn.Open "rovider=SQLNCLI10;Server=myServerAddress;DataBase=myDataBase;
复制代码
开启MARS功能
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase; Trusted_Connection=yes;MARS Connection=True;
MARS: multiple active result sets,即多活动结果集,是.NET Framework 2.0 版中新增的。ADO.NET 1.0 和 ADO.NET 1.1中并不支持此功能。
SQL Native Client 使用 MARS
复制代码
加密传输数据
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase; Trusted_Connection=yes;Encrypt=yes;
复制代码
在本地SQL Server Express实例中附加一个文件
Provider=SQLNCLI10;Server=.SQLExpress;AttachDbFilename=c:asdqwemydbfile.mdf; Database=dbname; Trusted_Connection=Yes;
这里需要明确指定Database参数。如果指定的数据库已经被附加,SQL Server将不重新安装数据库文件,而使用已经被附加的数据库作为默认连接。
复制代码
在本地SQL Server Express实例中附加一个文件 与 本地数据路径
Provider=SQLNCLI10;Server=.SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;
这里需要明确指定Database参数。如果指定的数据库已经被附加,SQL Server将不重新安装数据库文件,而使用已经被附加的数据库作为默认连接。
复制代码
数据库镜像
如果使用ADO.NET或SQL Native Client连接数据库是,当主服务器出现故障时,您的应用程序可以自动连接到伙伴服务器上。这这种语法中,除了主服务器和数据库外,还需要指定伙伴服务器属性。
Provider=SQLNCLI10;Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True;
数据库镜像的连接字符串有很多种方法,这里仅仅示例了故障转移功能的语法。您可以在此基础上在连接字符串中设置其他的选项。
复制代码
.NET Framework Data Provider for OLE DB
类型: .NET Framework Wrapper Class Library
用法: System.Data.OleDb.OleDbConnection
制造商: Microsoft
更多相关信息 »
返回顶部
桥接到 SQL Native Client OLE DB
这里仅仅展示了一个OleDbConnection类的连接字符串例子,这个类封装了底层的OLEDB提供程序。结合本例,可以了解各种OLD DB提供程序的更多连接字符串。
Provider=SQLNCLI10;Server=myServerAddress;Database=myDataBase;Uid=myUsername; Pwd=myPassword;
复制代码
SQL Server Native Client 10.0 ODBC Driver
类型: ODBC Driver
用法: Driver={SQL Server Native Client 10.0}
制造商: Microsoft
更多相关信息 »
返回顶部
标准连接
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;Uid=myUsernamewd=myPassword;
如果您正在使用SQL Server 2008 Express,在指库服务器名的时候,使用服务器名实例名 作为数据源,来连接一个指定的SQL Server实例。
复制代码
信任连接
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes;
等效键值对: "Integrated Security=SSPI" == "Trusted_Connection=yes"
复制代码
连接到一个SQL Server 实例
指定数据库实例的键值的语法,与其他SQL Server连接字符串相同。
Driver={SQL Server Native Client 10.0};Server=myServerNametheInstanceName; Database=myDataBase;Trusted_Connection=yes;
复制代码
提示输入用户名与密码
这种语法稍有些复杂。首先你需要将数据库连接对象的 Prompt 属性值设置成 adPromptAlways 。然后再使用连接字符串连接数据库。
oConn.Properties("rompt" = adPromptAlways
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;
复制代码
开启MARS功能
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;Trusted_Connection=yes; MARS_Connection=yes;
MARS: multiple active result sets,即多活动结果集,是.NET Framework 2.0 版中新增的。ADO.NET 1.0 和 ADO.NET 1.1中并不支持此功能。
移植到MARS,简化数据库连接 from DevX.com
复制代码
加密传输数据
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase; Trusted_Connection=yes;Encrypt=yes;
复制代码
在本地SQL Server Express实例中附加一个文件
Driver={SQL Server Native Client 10.0};Server=.SQLExpress; AttachDbFilename=c:asdqwemydbfile.mdf; Database=dbname;Trusted_Connection=Yes;
这里需要明确指定Database参数。如果指定的数据库已经被附加,SQL Server将不重新安装数据库文件,而使用已经被附加的数据库作为默认连接。
复制代码
在本地SQL Server Express实例中附加一个文件 与 本地数据路径
Driver={SQL Server Native Client 10.0};Server=.SQLExpress;AttachDbFilename=|DataDirectory|mydbfile.mdf; Database=dbname;Trusted_Connection=Yes;
这里需要明确指定Database参数。如果指定的数据库已经被附加,SQL Server将不重新安装数据库文件,而使用已经被附加的数据库作为默认连接。
复制代码
数据库镜像
如果使用ADO.NET或SQL Native Client连接数据库是,当主服务器出现故障时,您的应用程序可以自动连接到伙伴服务器上。这这种语法中,除了主服务器和数据库外,还需要指定伙伴服务器属性。
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Failover_Partner=myMirrorServerAddress;Database=myDataBase; Trusted_Connection=yes;
数据库镜像的连接字符串有很多种方法,这里仅仅示例了故障转移功能的语法。您可以在此基础上在连接字符串中设置其他的选项。
请注意,如果你使用TCP/IP和数据库镜像,需要在主服务器和伙伴服务器属性中指定端口号,这样可以解决一些已知的问题。
复制代码
.NET Framework Data Provider for ODBC
类型: .NET Framework Wrapper Class Library
用法: System.Data.Odbc.OdbcConnection
制造商: Microsoft
更多相关信息 »
返回顶部
桥接到SQL Native Client 10.0 ODBC Driver
这里仅仅展示了一个OdbcConnection类的连接字符串例子,这个类封装了底层的ODBC提供程序。结合本例,可以了解各种ODBC提供程序的更多连接字符串。
Driver={SQL Server Native Client 10.0};Server=myServerAddress;Database=myDataBase;Uid=myUsernamewd=myPassword;
复制代码
SQLXML 4.0 OLEDB Provider
类型: OLE DB Provider
用法: Provider=SQLXMLOLEDB.4.0;Data Provider=providername
制造商: Microsoft
更多相关信息 »
返回顶部
使用SQL Server Native Client提供程序
Provider=SQLXMLOLEDB.4.0;Data Provider=SQLNCLI10;Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsernameassword=myPassword;
复制代码
Context Connection(上下文连接)
类型: .NET Framework Class Library
用法:
制造商: Microsoft
更多相关信息 »
返回顶部
上下文连接
如果您需要连接到存储过程或函数正在其上运行的同一台服务器,则在大多数情况下请使用上下文连接。这具有一些优势,例如,在同一个事务空间中运行以及不必重新验证。
此外,使用上下文连接通常会导致性能更佳和占用更少的资源。上下文连接是纯进程内连接,因此,它可以跳过网络协议和传输层“直接”与服务器联系,以发送 Transact-SQL 语句和接收结果。同时跳过验证过程。
利用上下文连接,您可以在首次被调用代码的同一上下文中执行 Transact-SQL 语句。
C#
using(SqlConnection connection = new SqlConnection("context connection=true")
{
connection.Open();
// Use the connection
}
VB.Net
Using connection as new SqlConnection("context connection=true"
connection.Open()
' Use the connection
End Using
何时使用SQL Native Client?
全部 SqlConnection connection字符串属性列表
本文链接地址:http://www.connlist.com/sql-server-2008/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
最近因工作需要,用C#做了些应用,现对ADO.NET的数据库访问作一个小结,以供大家交流学习,迟些时候贴上自己的一些代码。
ADO.NET的数据访问对象是以下几个:
1、Connection对象:与数据源建立连接,连接sql server7.0 或更新版本数据库用SqlConnection,连接OLEDB数据源使用OledbConnection.
2、Command 对象:对数据源执行SQL命令并返回结果,SQL Server7.0或更新版本用SqlCommand,OLE DB数据源使用OledbCommand.
3、DataReader对象: 读取数据源的数据,只能将数据源的数据从头到尾依次读出,Sql server7.0或以上版本使用SqlDataReader,Oledb数据源使用OledbReader
4、DataAdapter对象:对数据源执行操作并返回结果,在DataSet与数据源之间建立通信,将数据源中的数据写入DataSet ,或根据DataSet中的数据必定数据源。Sql server7.0或以上版本使用SqlDataAdapter,Oledb 数据源使用OledbAdpater.
5、DataSet对象:服务器内存中的数据库
6、DataView对象:用于显示DataSet中的数据
从数据库中读取纪录的另一种方法是使用Dataset对象和Dataadapter对象.Dataset是ADO.NET的主要组件之一,它用于缓存从数据源检索到的数据信息。Dataadapter作为Dataset和数据源之间的桥接器,用于检索和保存数据。 Dataadapter从数据库中获取数据后使用Fill方法把数据填充到Dataset中。下面以Sqldataadapter为例说明如何使用 Dataset对象和Dataadapter对象从数据库中读取记录。执行查询的关键步骤如下:
1、创建与数据库建立连接的Sqlconnection,传递连接字符串。
2、构造包含查询语句的Sqldataadapter对象;
3、若要使用查询结果填充Dataset对象,则调用命令Fill方法。
c#利用ado.net进行数据库开发的基本步骤:
1、创建和数据库连接的connection 对象。
2、配置DataAdapter对象并创建和操作数据集DataSet。
3、将数据库中的表添加到DataSet中。
4、把数据集DataSet绑定到DataGrid上。利用DataAdapter 的Fill方法把数据填充到DataSet,最终的数据库中的数据显示在用户界面的DataGrid中。
c#中从数据库查询记录的方法分类:
一般使用两种方法:
一种是通过DataReader对象直接访问;另一种则是通过数据集Dataset和Dataadapter对象访问.
使用ADO.NET的Datareader对象能从数据库中检索数据。检索出来的数据形成一个只读只进的数据流,存储在客户端的网络缓冲区内。 Datareader对象的read方法可以前进到一下条记录。在默认情况下,每执行一次read方法只会在内存中存储一条记录系统的开销非常少。
创建datareader之前必须先创建sqlcommand对象,然后调用该对象的executereader方法来构造sqldatareader对象,而不是直接使用构造函数。
下面的示例程序完成的功能是访问sqlserver数据库,并使用datareader从northwind数据中读取记录,并将查询结果通过控制台输出。
using System;
using System.Data;
using System.Data.SqlClient;
namespace ReadDataFromDB{
class Class1{
static void Main(string[] args){
string myconn="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=Northwind";
//需要执行的SQL语句
string mysql="select OrderID,CustomerID from Orders where CustomerID='CHOPS'";
//打开数据库连接。
SqlConnection myconnection=new SqlConnection(myconn);
myconnection.Open();
//创建SqlCommand 对象
SqlCommand mycommand=new(mysql,myconnection);
//通过SqlCommand的ExecuteReader()方法构造DataReader 对象。
SqlDataReader myreader=mycommand.ExecuteReader();
while(myreader.read()){
Console.WriteLine(myreader.GetInt32(0)+","+myreader.GetString(1));
}
myreader.Close();
myconnection.Close();
}
}
}
VS2008下C#存储图片到sql2005数据库中 收藏
表名:table_3
表结构
字段名 字段类型 其它
id int 自增长
i_image image
写数据库
view plaincopy to clipboardprint?
1. //写入数据库
2.
3. //创建数据库连接字符串
4. string strConn = @"Data Source=.;Initial Catalog=test;User ID=saassword=sa";
5.
6. //创建SQL语句
7. string sql = "insert into table_3 (i_image) values (@i_image)";
8. try
9. {
10. //创建SqlConnection对象
11. SqlConnection connection = new SqlConnection(strConn);
12.
13. //创建SqlCommand对象
14. SqlCommand command = new SqlCommand(sql, connection);
15.
16.
17. Byte[] bytBLOBData = getphoto(textEdit1.Text);
18.
19. ////创建参数对象
20. SqlParameter prm = new SqlParameter("@i_image", SqlDbType.Image, bytBLOBData.Length,
21. ParameterDirection.Input, true, 0, 0, null, DataRowVersion.Default, bytBLOBData);
22.
23. command.Parameters.Add(prm);
24.
25. //打开数据库连接
26. connection.Open();
27.
28. command.ExecuteNonQuery();
29.
30. connection.Close();
31. }
32.
33. catch (Exception ex)
34. {
35. MessageBox.Show(ex.Message);
36. }
37. finally
38. {
39. MessageBox.Show("上传完成!";
40. }
//写入数据库 //创建数据库连接字符串 string strConn = @"Data Source=.;Initial Catalog=test;User ID=saassword=sa"; //创建SQL语句 string sql = "insert into table_3 (i_image) values (@i_image)"; try { //创建SqlConnection对象 SqlConnection connection = new SqlConnection(strConn); //创建SqlCommand对象 SqlCommand command = new SqlCommand(sql, connection); Byte[] bytBLOBData = getphoto(textEdit1.Text); ////创建参数对象 SqlParameter prm = new SqlParameter("@i_image", SqlDbType.Image, bytBLOBData.Length, ParameterDirection.Input, true, 0, 0, null, DataRowVersion.Default, bytBLOBData); command.Parameters.Add(prm); //打开数据库连接 connection.Open(); command.ExecuteNonQuery(); connection.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { MessageBox.Show("上传完成!"; }
view plaincopy to clipboardprint?
1. /// <summary>
2. /// 定义将图片转化为二进制代码的函数getphoto()
3. /// </summary>
4. /// <param name="photopath">图片路径</param>
5. /// <returns>二进制代码</returns>
6. public Byte[] getphoto(string photopath)
7. {
8. string str = photopath;
9. FileStream file = new FileStream(str, FileMode.Open, FileAccess.Read);
10. Byte[] bytBLOBData = new Byte[file.Length];
11. file.Read(bytBLOBData, 0, bytBLOBData.Length);
12. file.Close();
13. return bytBLOBData;
14. }
/// <summary> /// 定义将图片转化为二进制代码的函数getphoto() /// </summary> /// <param name="photopath">图片路径</param> /// <returns>二进制代码</returns> public Byte[] getphoto(string photopath) { string str = photopath; FileStream file = new FileStream(str, FileMode.Open, FileAccess.Read); Byte[] bytBLOBData = new Byte[file.Length]; file.Read(bytBLOBData, 0, bytBLOBData.Length); file.Close(); return bytBLOBData; }
读数据库
view plaincopy to clipboardprint?
1. //读数据库
2.
3. //创建数据库连接字符串
4. string strConn = @"Data Source=.;Initial Catalog=test;User ID=saassword=sa";
5.
6. //创建SQL语句
7. string sql = "select id,i_image from table_3";
8. try
9. {
10. //创建SqlConnection对象
11. SqlConnection connection = new SqlConnection(strConn);
12.
13. //打开数据库连接
14. connection.Open();
15.
16. //创建SqlCommand对象
17. SqlCommand command = new SqlCommand(sql, connection);
18.
19. //创建DataAdapter对象
20. SqlDataAdapter dataAdapter = new SqlDataAdapter(command);
21.
22. //创建DataSet对象
23. DataSet dataSet = new DataSet();
24.
25. //填充dataset
26. dataAdapter.Fill(dataSet, "table_3";
27.
28. int c = dataSet.Tables["table_3"].Rows.Count;
29.
30.
31. connection.Close();
32.
33. gridControl1.DataSource = dataSet.Tables["table_3"];
34.
35. }
36.
37. catch (Exception ex)
38. {
39.
40. MessageBox.Show(ex.Message);
41.
42. } .最简单的方法:打印输出
C#代码 收藏代码
1. Console.WriteLine("hello,come on baby");
Console.WriteLine("hello,come on baby");
这句话等同于java中的
Java代码 收藏代码
1. Syste.out.println("hello";
Syste.out.println("hello";
2.error list view
点击视图-错误列表(view-error list),打开错误视图,这个没啥好所的,自己实践
3.控制台输出
C#代码 收藏代码
1. Debug.WriteLine("debug:hello";//仅在调试模式下运行
2. Trace.WriteLine("trace:hello";//可用于发布程序
Debug.WriteLine("debug:hello";//仅在调试模式下运行
Trace.WriteLine("trace:hello";//可用于发布程序
记得要使用Debug或Trace,需要引入相关类
C#代码 收藏代码
1. using System.Diagnostics;
using System.Diagnostics;
在IDE下查看输入,视图-输出(view-output)
在IDE下,标准工具栏中,可进行Debug/Release模式的切换
其他
C#代码 收藏代码
1. Debug.WriteIf();
2. Debug.WriteLineIf();
3. Trace.WriteIf();
4. Trace.WriteLineIf();
Debug.WriteIf();
Debug.WriteLineIf();
Trace.WriteIf();
Trace.WriteLineIf();
插入点 (类似DeBug.WriteLine语句,但不需要改变代码,为IDE自带功能)
C#代码 收藏代码
1. 1。选中代码行
2. 2。右键-断点(BrackPoint)-插入跟踪点(insert TracePonit)-弹出的窗口中输入文本
3.
1。选中代码行
2。右键-断点(BrackPoint)-插入跟踪点(insert TracePonit)-弹出的窗口中输入文本
要查看所有断点(breckPoint),可以在断点窗口中查看 主菜单中: 调试-窗口-断点 (Debug-window-breackPoint)
错误处理
try..catch....finally
好熟悉把,这个和java差不多,后面讨
调试技巧
本文介绍如何使用 Debug 和 Trace 类。Microsoft .NET Framework 中提供了这两个类。在应用程序开发期间或部署到产品后,可以使用这两个类提供有关应用程序性能的信息。这两个类只是 .NET Framework 中所提供配置功能的一部分。
要求下面的列表概括了推荐的硬件、软件、网络结构以及所需的 Service Pack:
• Microsoft Windows 2000 或 Microsoft Windows XP
• Microsoft Visual C# .NET
本文还假定您熟悉程序调试。
方法说明
在使用 Debug 类创建一个示例一节中介绍的步骤演示了如何创建使用 Debug 类以提供有关程序执行信息的控制台应用程序。
当程序运行时,您可以使 用 Debug 类的方法来生成消息,以帮助您监视程序执行顺序、检测故障或提供性能度量信息。默认情况下,Debug 类产生的消息显示在 Visual Studio 集成开发环境 (IDE) 的“输出”窗口中。
该代码示例使用 WriteLine 方法生成后面带有行结束符的消息。当您使用此方法生成消息时,每条消息在“输出”窗口中均显示为单独的一行。
如果使用 Debug 类的 Assert 方法,那么只有在指定条件计算为 false 时,“输出”窗口才显示消息。该消息还在一个模式对话框中向用户显示。该对话框包括消息、项目名和 Debug.Assert 语句编号。该对话框还包括下列三个命令按钮:
• 终止:应用程序停止运行。
• 重试:应用程序进入调试模式。
• 忽略:应用程序继续。
用户必须先单击这些按钮中的一个,然后应用程序才可以继续。
您还可以指示从 Debug 类向“输出”窗口以外的目标进行输出。Debug 类有一个名为 Listeners 的集合,该集合包括一些 Listener 对象。
每 个 Listener 对象都监视 Debug 输出并使输出指向指定的目标。
Listener 集合中的每个 Listener 都接收 Debug 类生成的任何输出。请使用 TextWriterTraceListener 类定义 Listener 对象。可以通过 TextWriterTraceListener 类的构造函数为该类指定目标。
一些可能的输出目标包括:
• 使用 System.Console.Out 属性指定“控制台”窗口作为输出目标。
• 使用 System.IO.File.CreateText("FileName.txt" 语句指定文本文件 (.txt) 作为输出目标。
创建 TextWriterTraceListener 对象后,必须将该对象添加到 Debug.Listeners 集合才可接收调试输出。
使 用 Debug 类创建一个示例
1. 启动 Visual Studio .NET。
2. 新建一个名为 conInfo 的新 Visual C# .NET 控制台应用程序项目。将创建 Class1。
3. 在 Class1 的顶部添加以下名称空间。
using System.Diagnostics;
4. 要初始化变量以使其包含产品的相关信息,请将下面的声明语句添加到 Main 方法:
string sProdName = "Widget";
int iUnitQty = 100;
double dUnitCost = 1.03;
5. 将类生成的消息指定为 WriteLine 方法的第一个输入参数。按 CTRL+ALT+O 组合键以确保“输出”窗口可见。
Debug.WriteLine("Debug Information-Product Starting ";
6. 为了清晰易读,请使用 Indent 方法在“输出”窗口中缩进后面的消息:
Debug.Indent();
7. 要显示所选变量的内容,请使用 WriteLine 方法,如下所示:
Debug.WriteLine("The product name is " + sProdName);
Debug.WriteLine("The available units on hand are" + iUnitQty.ToString());
Debug.WriteLine("The per unit cost is " + dUnitCost.ToString());
8. 您还可以使用 WriteLine 方法显示现有对象的名称空间和类名称。例如,下面的代码在“输出”窗口中显示 System.Xml.XmlDocument 命名空间:
System.Xml.XmlDocument oxml = new System.Xml.XmlDocument();
Debug.WriteLine(oxml);
9. 要整理输出,可以包括一个类别作为 WriteLine 方法的第二个可选的输入参数。如果您指定一个类别,则“输出”窗口消息的格式为“类别:消息”。例如,以下代码的第一行在“输出”窗口中显示
“Field:The product name is Widget”:
Debug.WriteLine("The product name is " + sProdName,"Field";
Debug.WriteLine("The units on hand are" + iUnitQty,"Field";
Debug.WriteLine("The per unit cost is" + dUnitCost.ToString(),"Field";
Debug.WriteLine("Total Cost is " + (iUnitQty * dUnitCost),"Calc";
10. 仅在使用 Debug 类的 WriteLineIf 方法将指定条件计算为 true 时,“输出”窗口才可以显示消息。将要计算的条件是 WriteLineIf 方法的第一个输入参数。WriteLineIf 的第二个参数是仅在第一个参数的条件计算为真时才显示的消息。
Debug.WriteLineIf(iUnitQty > 50, "This message WILL appear";
Debug.WriteLineIf(iUnitQty < 50, "This message will NOT appear";
11. 使用 Debug 类的 Assert 方法,使“输出”窗口仅在指定条件计算为 false 时才显示消息:
Debug.Assert(dUnitCost > 1, "Message will NOT appear";
Debug.Assert(dUnitCost < 1, "Message will appear since dUnitcost < 1 is false";
12. 为“控制台”窗口 (tr1) 和名为 Output.txt (tr2) 的文本文件创建 TextWriterTraceListener 对象,然后将每个对象添加到 Debug Listeners 集合中:
TextWriterTraceListener tr1 = new TextWriterTraceListener(System.Console.Out);
Debug.Listeners.Add(tr1);
TextWriterTraceListener tr2 = new TextWriterTraceListener(System.IO.File.CreateText("Output.txt"));
Debug.Listeners.Add(tr2);
13. 为了清晰易读,请使用 Unindent 方法去除 Debug 类为后续消息生成的缩进。当您将 Indent 和 Unindent 两种方法一起使用时,读取器可以将输出分成组。
Debug.Unindent();
Debug.WriteLine("Debug Information-Product Ending");
14. 为了确保每个 Listener 对象收到它的所有输出,请为 Debug 类缓冲区调用 Flush 方法:
Debug.Flush();
使用 Trace 类 您还可以使用 Trace 类生成监视应用程序执行的消息。Trace 和 Debug 类共享大多数相同的方法来生成输出,这些方法包括:
• WriteLine
• WriteLineIf
• Indent
• Unindent
• Assert
• Flush
您可以在同一应用程序中分别或同时使用 Trace 和 Debug 类。在一个“调试解决方案配置”项目中,Trace 和 Debug 两种输出均为活动状态。该项目从这两个类为 Listener 对象生成输出。但是,“发布解决方案配置”项目仅从 Trace 类生成输出。该“发布解决方案配置”项目忽略任何 Debug 类方法调用。
string myconn = "Data Source=10.0.4。1;Initial Catalog=啊;User ID=saassword=s";
//需要执行的SQL语句
string mysql = "select top 1 ID from a";
int a;
//打开数据库连接。
SqlConnection myconnection = new SqlConnection(myconn);
myconnection.Open();
//创建SqlCommand 对象
SqlCommand mycommand = new SqlCommand(mysql, myconnection);
//通过SqlCommand的ExecuteReader()方法构造DataReader 对象。
SqlDataReader myreader = mycommand.ExecuteReader();
while (myreader.Read())
{
Console.WriteLine(myreader.GetInt32(0));
a = myreader.GetInt32(0);
Debug.WriteLine("debug:hello");
Debug.WriteLine(myreader.GetInt32(0));
}
myreader.Close();
myconnection.Close(); .net断点调试技巧比起java简单好多 快速方便解决问题
急,vs2008 c#连接sql2005时出现的错误 悬赏分:30 | 解决时间:2009-11-27 12:56 | 提问者:我想不透了
在web.config中这样设置
<add providerName="System.Data.SqlClient" name="conn" connectionString="server=(local);database=lyb;uid=sa"/>
</connectionStrings>
在运行时出现这样的错误:
用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 用户 'sa' 登录失败。该用户与可信 SQL Server 连接无关联。
我的数据库是sql sever 2005版本的、
在连接数据库时我只能用windows身份验证的方式才可以连上数据库。
我改怎么更改web.config中的内容,使之在连接数据库时是使用windows身份验证呢??
急求。。谢谢了。。
我可以奉上我全部的积分。谢谢~问题补充:
3楼、这些字符串貌似有些问题哈
字符串是:Data Source=PC-200909191815;Initial Catalog=lyb;Integrated Security=True
可是。如果复制过去就变成:Data="" Source="C-200909191815;Initial" Catalog="lyb;Integrated" Security="True"
然后就有错误说data 是为定义的属性等、、
最佳答案 告诉你一个偷懒的方法。。。。
你在VS里用服务器资源管理器连接数据库
然后在VS里看数据库的属性。。。里面就有连接字符串
赋值出来粘贴在上面就可以了
补充。。。。你复制错了吧
Data="" Source="C-200909191815;Initial" Catalog="lyb;Integrated" Security="True"
Data="" Source 中间的等号和引号哪里来的。。。
这样<add name="你的字符串名字" connectionString="复制的字符串" providerName="System.Data.SqlClient"/>
分享给你的朋友吧:
人人网
新浪微博
开心网
MSN
QQ空间
对我有帮助
0回答时间:2009-11-27 12:43 | 我来评论
向TA求助 回答者: fover0 | 五级采纳率:46%
擅长领域: 暂未定制
参加的活动: 暂时没有参加的活动
提问者对于答案的评价:
是滴是滴
我复制错掉了
谢谢哈
还有要谢谢其他几位~
相关内容
2010-11-15 谁能帮忙看看vs2008连接SQL2005数据库。急、、、、、、请高手帮帮忙吧 2010-10-17 (在线等,linq,vs2008,sql2005)错误提示:The underlying provider ... 2 2008-12-24 vs2008.net 下的C#,创建了一个oledbConnection,.连接到sql2005中的数据... 10 2010-11-17 vs2008如何连接sql2005数据库 2009-9-15 vs2008 连接 sql2005出错 更多关于vs2008 c# 连接sqlserver的问题>>
查看同主题问题: 连接 sql2005 sql2005 错误
等待您来回答0回答50求:《魂断蓝桥》的原声带!cell0回答5求魂断蓝桥auld lang syne电影原声版1回答魂断蓝桥中的主题曲0回答20谁能帮我传一份:英文电影“魂断蓝桥(Waterloo Brideg)”的中英文对...更多等待您来回答的问题>>
其他回答 共3条
<add providerName="System.Data.SqlClient" name="conn" connectionString=".;database=lyb;uid=sa;password=(这里写你的SA的密码,不包括括号)"/>
这样就可以了 回答者: pengjianhang | 七级 | 2009-11-27 11:52
Windows验证:
<connectionStrings>
<add name="conn" connectionString="Data Source=.;Intial Catalog=lybersist Security Info=true" providerName="System.Data.SqlClient"/>
</connectionStrings> 回答者: mbmao | 五级 | 2009-11-27 11:58
connectionString="Data Source=192.168.0.1;Initial Catalog=lydersist Security Info=True;User ID=saassword=你的密码;"