• (1)OracleClient数据库操作(淘汰)


    一、数据库连接

    Oracle 数据提供程序,位于System.Data.OracleClient 命名空间.( .NET 4 以后的版本,会将不在维护和更新了)

    第一步:引入命名空间

    在程序的开头写上下面的代码

    using System.Data.OracleClient;

     第二步:引入对应组件

    点击项目-右键-添加引用-找到System.Data.OracleClient-确定.

    第三步:写代码

     private void button1_Click(object sender, EventArgs e)
            {
                 string str="server=.;data source=orcl;uid=xxx;pwd=xxx";
             //上面这句需要安装Oracle客户端并配置tnsnames.ora
                //string str = "User ID=xxx;Password=xxx;Data Source=(DESCRIPTION = (ADDRESS_LIST= (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)));";
                //上面这句需要安装Oracle客户端不需配置tnsnames.ora
                OracleConnection conn = new OracleConnection(str);
                conn.Open();
                if (conn.State == ConnectionState.Open)
                {
                    MessageBox.Show("连接成功");
                }
                conn.Close();
            }

      database和data source的区别?

       database是数据库的意思,用sqlserver数据库是需要用这个。 

       data source是数据资源的意思,用Oracle数据库时用这个。


    if (conn.State == ConnectionState.Open)的意思?
    用conn.State判断当前数据库是关闭还是打开的,而ConnectionState.Open得意思是打开。所以如果数据库是打开状态就可以为“真”。 这句话是用来判断数据库是不是打开状态的。(前提是要引用using System.Data;命名空间)
    
    
     
    安装oracle后 tnsnames.ora文件目录
    D:appAdministratorproduct11.2.0dbhome_1NETWORKADMIN

    ORCL =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = orcl)
    )
    )

     

    二、执行sql语句(Command

    OracleCommand 命令对象的名称 =new OracleCommand(SQL语句,连接对象名称);

    共分为两种操作:增删改和查询操作

    当需要使用增删改操作时

    string str1="insert into student values(1,'tom')";
    OracleCommand cmd = new OracleCommand(str1,conn);
    cmd.ExecuteReader();

    当需要查询时 

    string str1="select * from student";
    OracleCommand cmd = new OracleCommand(str1,conn);
    OracleDataReader dr=cmd.ExecuteReader();//把查询的结果传给OracleDataReader的对象
    //下一步读取数据

    读取数据

    OracleDataReader对象获取到值以后就需要读取数据了

    首先

     dr.read();//把箭头指向表格的第一行,第一列

    然后

    dr["表的字段名"]或者dr[下标数字(相当于数组)] 就可以读取指定的数据了

    假设

    表格的第一个字段是id,第二个字段是name

    例如

    dr["id"] 或者dr[0] 就能读出第一行第一列的数据

    dr["name"]或者di[1]就能读出第一行第二列的数据

    如果想要第二行的数据就需要用到循环

    while (dr.Read())//假设这是一个控制台程序
                {
                    Console.Write(dr[0]);
                    Console.WriteLine(dr[1]);
                }

    command 有三个常用方法

    1、

    cmd.ExecuteNonQuery();//执行sql语句并返回受影响的行数。通常用来执行增删改。

    2、

    OracleDataReader dr=cmd.ExecuteReader();//执行sql语句并把查询的内容放到OracleDataReader对象里。用来做查询

    3、

    cmd.ExecuteScalar();//执行sql语句,并返回结果集中的第一行第一列。通常和函数配合使用,为了计算某个值。

    三、 DataReader

    OracleDataReader的属性:HasRows 用来判断结果是否有数据,有的话返回True

    if(dr.HasRows)
    {
        MessageBox.Show("数据表中有值");
    }

    OracleDataReader的方法:

    dr.read();//
    dr.Close();//关闭OracleDataReader对象。如果一个OracleConnection创建了多个OracleDataReader,则在创建OracleDataReader之前需要先管壁上一个。

     

    四、数据适配器 DataAdapter对象

    DataAdapter对象是一个数据适配器对象,在DataSet与数据源之间起到桥梁的作用。它有四个属性

    1、 SelectCommand ,用来向数据库发送查询SQL语句

    2、DeleteCommand,向数据库发送删除语句

    3、InsertCommand,向数据库发送插入语句

    4、UpdateCommand,向数据库发送更新语句

    DataAdapter的方法

    1 、Fill方法:用于填充DataSet数据集

    da.Fill(ds,"student");//括号里的参数(Data对象,表名);
    dataGridView1.DataSource = ds.Tables["表名"];
    //或者dataGridView1.DataSource = ds.Tables[0];

     2、Updata方法:用来更新数据库

     增

    五、数据集DataSet

  • 相关阅读:
    js03 案例驱动表单的验证
    js02 案例驱动1 定时弹出广告 Brower对象
    js基础01
    ScalarHandler对象获取 数据库中的数据是注意转换
    java中写模糊查询2
    mvc与三层结构终极区别
    JSP和El表达式和JSTL标签库使用
    SQL注入学习笔记——盲注
    SQL注入学习笔记——联合语句查询
    Linux PHP版本7下布置sqli-labs
  • 原文地址:https://www.cnblogs.com/buchizaodian/p/5707868.html
Copyright © 2020-2023  润新知