LinkDataBase.cs
上传用户:hjieqiu
上传日期:2013-05-11
资源大小:16494k
文件大小:2k
源码类别:

企业管理

开发平台:

C#

  1. using System;
  2. using System.Data;
  3. using System.Data.SqlClient;
  4. namespace 进销存管理系统
  5. {
  6. /// <summary>
  7. /// LinkDataBase 的摘要说明。
  8. /// </summary>
  9. public class LinkDataBase
  10. {
  11. private string strSQL;
  12. //与SQL Server的连接字符串设置
  13. private string connectionString = "workstation id=localhost;Integrated Security=SSPI;database=jxcbook";
  14.         //与数据库的连接
  15. private SqlConnection myConnection;
  16. private SqlCommandBuilder sqlCmdBld;
  17. private DataSet ds = new DataSet();
  18. private SqlDataAdapter da;
  19. public LinkDataBase()
  20. {
  21. //
  22. // TODO: 在此处添加构造函数逻辑
  23. //
  24. }
  25. /////////////////////////////////  操作脱机数据库(创建了该类的实例时直接用)  /////////////////////////////////////////////////////
  26. //根据输入的SQL语句检索数据库数据
  27. public DataSet SelectDataBase(string tempStrSQL,string tempTableName)
  28. this.strSQL = tempStrSQL;
  29. this.myConnection = new SqlConnection(connectionString);
  30. this.da = new SqlDataAdapter(this.strSQL,this.myConnection);
  31. this.ds.Clear();
  32. this.da.Fill(ds,tempTableName);
  33. return ds;//返回填充了数据的DataSet,其中数据表以tempTableName给出的字符串命名
  34. }
  35. //数据库数据更新(传DataSet和DataTable的对象)
  36. public DataSet UpdateDataBase(DataSet changedDataSet,string tableName)
  37. {
  38. this.myConnection = new SqlConnection(connectionString);
  39. this.da = new SqlDataAdapter(this.strSQL,this.myConnection);
  40. this.sqlCmdBld = new SqlCommandBuilder(da);
  41. this.da.Update(changedDataSet,tableName);
  42. return changedDataSet;//返回更新了的数据库表
  43. }
  44. /////////////////////////////////  直接操作数据库(未创建该类的实例时直接用)  /////////////////////////////////////////////////////
  45. //检索数据库数据(传字符串,直接操作数据库)
  46. public DataTable SelectDataBase(string tempStrSQL)
  47. {
  48. this.myConnection = new SqlConnection(connectionString);
  49. DataSet tempDataSet = new DataSet();
  50. this.da = new SqlDataAdapter(tempStrSQL,this.myConnection);
  51. this.da.Fill(tempDataSet);
  52. return tempDataSet.Tables[0];
  53. }
  54. //数据库数据更新(传字符串,直接操作数据库)
  55. public int UpdateDataBase(string tempStrSQL)
  56. {
  57. this.myConnection = new SqlConnection(connectionString);
  58. //使用Command之前一定要先打开连接,后关闭连接,而DataAdapter则会自动打开关闭连接
  59. myConnection.Open();
  60. SqlCommand tempSqlCommand = new SqlCommand(tempStrSQL,this.myConnection);
  61. int intNumber = tempSqlCommand.ExecuteNonQuery();//返回数据库中影响的行数
  62. myConnection.Close();
  63. return intNumber;
  64. }
  65. }
  66. }