您的位置:首页 > 数据库

c# 关于如何连接数据库的几种方法(switch语句中)

2010-11-20 23:08 519 查看
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Data;
using System.Data.SqlClient;

namespace yumen
{
class Program
{
static string connectionstring = string.Empty;
static void Main(string[] args)
{
int i;
connectionstring = "Data Source=.;Initial Catalog=student;User ID=sa;Password=shenbao";
Console.WriteLine("请输入一个数");
do
{
i = Convert.ToInt32(Console.ReadLine());
switch (i)
{
//第一种方法
case 1:
SqlConnection conn = new SqlConnection(connectionstring);
conn.Open();
try
{
if (conn.State == ConnectionState.Open)
{
Console.WriteLine("这是第一种方法,可以成功连接到数据库");
}
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "select *from student";
//cmd.CommandType = CommandType.Text;
SqlDataReader dr =cmd.ExecuteReader();
while (dr.Read())
{
Console.WriteLine("{0}{1}{2}" , dr[0], dr[1], dr[2]);
}
}
catch (SqlException ex)
{
Console.WriteLine("出现连接错误:{0}", ex.Message);
}
finally
{
if (conn.State == ConnectionState.Open)
{
//conn.Close();//关闭之后还可以重新打开
conn.Dispose();//清理所占用的资源
}
}
break;
//第二种方法
case 2:
SqlConnection conn1 = new SqlConnection(connectionstring);
try
{
conn1.Open();
SqlCommand cmd = new SqlCommand("select *from student");
cmd.Connection = conn1;
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataTable dt = new DataTable("student1");
sda.Fill(dt);
DisplayResult(dt);
}
catch (Exception ex)
{
Console.WriteLine("出现错误:{0}" + ex.Message);
}
finally
{
conn1.Close();
}
break;
//第三种方法
case 3:
using (SqlConnection conn2 = new SqlConnection())
{
conn2.ConnectionString = connectionstring;
conn2.Open();
if (conn2.State == ConnectionState.Open)
{
Console.WriteLine("这是第三种方法,可以成功连接到数据库");
}
}
break;
default:
Console.WriteLine("输入错误,请重新输入");
break;
}
} while (i != 0);
Thread.Sleep(5000);
}
//dataset 中有datatable对象,datacolumn对象,datarow对象。
//显示datatable中的数据
//dataset中的数据实际上是数据库中的副本
static void DisplayResult(DataTable dt)
{
for (int i = 0; i < dt.Columns.Count; i++)
{
Console.Write(dt.Columns[i].ColumnName.PadRight(10));
}
Console.WriteLine();
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int d = 0; d < dt.Columns.Count;d++ )
{
Console.Write(dt.Rows[i][d].ToString());
}
Console.WriteLine();
}
}
}
}
;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: