微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ADO.NET for SqlServer初学

string connString = @"server = (local)/sqlEXPRESS; Initial Catalog=northwind; user id = sa; password = 12345;";

string sql = @"select * from employees";

sqlConnection

l  sqlConnection conn = new sqlConnection( connString );

l  sqlConnection conn = new sqlConnection();

     conn.ConnectionString = connString;

Sample:

            string connString = @"server = (local)/sqlEXPRESS; Initial Catalog=northwind; user id = sa; password = 12345;";

            sqlConnection conn = new sqlConnection();

            conn.ConnectionString = connString;

            try

            {

                conn.open();

                Console.WriteLine("Connection opened.");

                Console.WriteLine("Connection Properties:");

                Console.WriteLine("/tConnection String:{0}",conn.ConnectionString);

                Console.WriteLine("/tDatabase:{0}",conn.Database);

                Console.WriteLine("/tDataSource:{0}",conn.DataSource);

                Console.WriteLine("/tServerVersion:{0}",conn.ServerVersion);

                Console.WriteLine("/tState:{0}",conn.State);

                Console.WriteLine("/tWorkstationID:{0}",conn.WorkstationId);

            }

            catch (sqlException e)

            {

                Console.WriteLine("Error:" + e);

            }

            finally

            {

                conn.Close();

                Console.WriteLine("Connection closed.");

            }

sqlCommand

l   sqlCommand cmd = new sqlCommand();

     cmd.CommandText = sql;

     cmd.Connection = conn;

l   sqlCommand cmd = new sqlCommand(@"select * from employees");

l   sqlCommand cmd = new sqlCommand(@"select * from employees",conn);

l   sqlCommand cmd = new sqlCommand(sql,conn);

l  sqlCommand cmd = conn.CreateCommand();

ExecuteNonQuery                      返回受影响的行数

ExecuteScalar                              单个值,返回第一行第一列的Object类型

ExecuteReader                           0个或多个行,返回一个数据读取器,它是sqlDataReader类的一                                                          个实例

ExecuteXmlReader                    XML

sqlDataReader

不能直接实例化数据读取器,而是通过执行命令对象的ExecuteReader方法创建它的实现。

为了能够把连接用于另一个目的,或在数据库上执行另一查询调用sqlDataReaderClose方法显示关闭读取器。这是因为,一旦把读取器附着到活动的连接上,连接就会一直忙于为读取器获取数据,而不能用于另一目的,直至端口读取器为止。

Depth()                                属性表示当前行的嵌套深度

FieldCount()                        属性表示结果集中的列数

GetDataTypeName()        这个方法接受索引,返回含有列数据类型名称的字符串

GetFieldType()                    这个方法接受索引,返回对象的.NET Frameword数据类型

GetName          ()                         这个方法接受索引,返回指定列的名词

Getordinal()                       这个方法接受列名,返回列的索引

Sample:

            string sql = @"select * from employees";

            string connString = @"server = (local)/sqlEXPRESS; Initial Catalog = northwind; user id = sa; password = 12345;";

            sqlConnection conn = new sqlConnection();

            conn.ConnectionString = connString;

            sqlCommand cmd = conn.CreateCommand();

            sqlDataReader reader = null;

            try

            {

                conn.open();

                cmd.CommandText = @"select count(*) from employees";

                Console.WriteLine("Number of Employees is: {0}",cmd.ExecuteScalar());

                cmd.CommandText = sql;

                reader = cmd.ExecuteReader();

                //Console.WriteLine("First Name|Last Name");

                Console.WriteLine(reader.GetDataTypeName(1).PadLeft(10) + "|" + reader.GetDataTypeName(2));

                Console.WriteLine(reader.GetName(1).PadLeft(10) + "|" + reader.GetName(2));//列名

                while (reader.Read())

                {

                    Console.WriteLine("{0}|{1}",

                        reader["FirstName"].ToString().PadLeft(10),

                        reader["LastName"].ToString().padright(10)

                    );

                }

                Console.WriteLine("Number of columns in a row: {0}",reader.FieldCount);

                Console.WriteLine("/"FirstName/" is at index {0} and its type is: {1}",

                    reader.Getordinal("FirstName"),

                    reader.GetFieldType(reader.Getordinal("FirstName")));

            }

            catch (sqlException e)

            {

                Console.WriteLine("Error:" + e);

            }

            finally

            {

                reader.Close();

                conn.Close();

            }

sqlDataAdapter

做为数据源与数据集的桥梁。

l   sqlDataAdapter da= new sqlDataAdapter();

l   sqlDataAdapter da= new sqlDataAdapter(sql) ;

l   sqlDataAdapter da= new sqlDataAdapter(sql,conn);

Sample:

            string connString = "Data Source=IBM-2E7EC1F0E54//sqlEXPRESS;Initial Catalog=northwind;User ID=sa;Password=12345";

            string sql = @"select productname,unitprice from products where unitprice < 20";

            sqlConnection conn = new sqlConnection(connString);

            try

            {

                conn.open();

                sqlDataAdapter da= new sqlDataAdapter(sql,conn);

                DataSet ds = new DataSet();

                da.Fill(ds,"products");

                DataTable dt = ds.Tables["products"];

                foreach(DaTarow row in dt.Rows)

                {

                    foreach(DataColumn col in dt.Columns)

                    {

                        Console.WriteLine(row[col]);

                    }

                    Console.WriteLine("".PadLeft(20,'-'));

                }

            }

            catch(sqlException e)

            {

                Console.WriteLine(e);

            }

            finally

            {

                conn.Close();

}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐