好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#程序连接数据库及读取数据库中字段的简单方法总结

连接Access数据库

?

string connStr = @"Data Source=D:\database.mdb; Provider=Microsoft.Jet.OleDb.4.0;" ; //数据库连接字符串

OleDbConnection conn = new OleDbConnection(connStr);

连接Oracle数据库

?

//数据库和客户端在同一台机器上

using System.Data.OracleClient;

string connStr = "data source=orcl;user=user;password=pwd;" ;

OracleConnection conn = new OracleConnection(connStr);

//客户端和数据库不在同一台机器,可以使用下面的连接方式

using System.Data.OleDb;

//HOST是Oracle数据库服务器地址,PORT是Oracle数据库端口,SERVICE_NAME是数据库名称

string connStr = "Provider=OraOLEDB.Oracle.1;Data Source=(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)));User ID=message;Password=message;" ;

OleDbConnection conn = new OleDbConnection(connStr);

连接SqlServer数据库

?

using System.Data.SqlClient;

string connStr = "data source=127.0.0.1;initial catalog=database;user id=sa;pwd=sa" ;

SqlConnection conn = new SqlConnection(connStr);

连接数据库,并从数据库中读取数据后并输出!

?

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Data.SqlClient;

 

namespace Login

{

  class Program

  {

   static void Main( string [] args)

   {

    //新建一个数据库连接

    using (SqlConnection conn = new SqlConnection(GetConnectString()))

    {

     conn.Open(); //打开数据库

     //Console.WriteLine("数据库打开成功!");

     //创建数据库命令

     SqlCommand cmd = conn.CreateCommand();

     //创建查询语句

     cmd.CommandText = "SELECT * FROM userinfo" ;

     //从数据库中读取数据流存入reader中

     SqlDataReader reader = cmd.ExecuteReader();    

     

     //从reader中读取下一行数据,如果没有数据,reader.Read()返回flase

     while (reader.Read())

     {

      //reader.GetOrdinal("id")是得到ID所在列的index,

      //reader.GetInt32(int n)这是将第n列的数据以Int32的格式返回

      //reader.GetString(int n)这是将第n列的数据以string 格式返回

      int id = reader.GetInt32(reader.GetOrdinal( "id" ));

      string name = reader.GetString(reader.GetOrdinal( "name" ));

      string pwd = reader.GetString(reader.GetOrdinal( "password" ));

      int age = reader.GetInt32(reader.GetOrdinal( "age" ));

      string sex = reader.GetString(reader.GetOrdinal( "sex" ));

      string phone = reader.GetString(reader.GetOrdinal( "phone" ));

      string address = reader.GetString(reader.GetOrdinal( "Address" ));

 

      //格式输出数据

      Console.Write( "ID:{0},Name:{1},PWD:{2},Age:{3},Sex:{4},Phone{5},Address:{6}\n" , id, name, pwd, age, sex, phone, address);

     }

    }

    Console.ReadKey();

   }

   //得到一个数据库连接字符串

   static string GetConnectString()

   {

    return "Data Source=(local);Initial Catalog=db1;Integrated Security=SSPI;" ;

   }

  }

}


判断数据库中取出的字段值是否为空(NULL)
最近操作数据库,需要判断返回的字段值是否为空,在Google上搜索到三种方法。

1 通过System.DBNull判断,网上大部分都使用这个方法。

?

DataTable dt;        //假设字段为name, dt已经保存了数据

dt.rows[0][ "name" ] == System.DBNull.Value; //判断第一行数据的name字段是否为空

2 通过IsNull判断

?

DataTable dt;    //假设字段为name, dt已经保存了数据

dt.rows[0].IsNull( "name" ); //判断第一行数据的name字段是否为空

3 通过ToString() 判断,这个方法我没有试过。

?

DataTable dt;       //假设字段为name, dt已经保存了数据

dt.rows[0][ "name" ].ToString() == "" ; //判断第一行数据的name字段是否为空

 

dy("nrwz");

查看更多关于C#程序连接数据库及读取数据库中字段的简单方法总结的详细内容...

  阅读:55次