c# oracle datasource,C# 连接Oracle 数据库 示例源码下载

【实例简介】C# 实现 Oracle 数据库的 增删改查 操作

【实例截图】

b384177bc39ffdf567334d901d06f159.png

【核心代码】

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.OleDb;

using System.Data.OracleClient;

namespace Oracle

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void Form1_Load(object sender, EventArgs e)

{

allgoods();

}

//提取商品信息

public void allgoods()

{

try

{

OracleConnection con = new OracleConnection("Data Source=orcl;User ID=SA;password=123;");

OracleDataAdapter da = new OracleDataAdapter();

OracleCommand cmd = new OracleCommand();

cmd.Connection = con;

cmd.CommandText = "ALLGOODS";

OracleParameter param_out = cmd.Parameters.Add("P_CURSOR", OracleType.Cursor);

param_out.Direction = ParameterDirection.Output;

cmd.CommandType = CommandType.StoredProcedure;

da.SelectCommand = cmd;

DataTable dt = new DataTable();

da.Fill(dt);

dataGridView1.DataSource = dt;

}

catch (Exception ex)

{

MessageBox.Show(ex.ToString());

}

}

private void button1_Click(object sender, EventArgs e)

{

addgoods a = new addgoods();

a.Show();

allgoods();

}

private void button3_Click(object sender, EventArgs e)

{

if (MessageBox.Show("真的要删除吗", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.Cancel)

return;

if (dataGridView1.Rows.Count > 0)

{

OracleConnection con = new OracleConnection("Data Source=orcl;User ID=sa;password=123;");

OracleCommand cmd = new OracleCommand();

con.Open();

cmd.Connection = con;

cmd.CommandText = "DELETEGOODS";

OracleParameter[] parameters ={

new OracleParameter("gid",OracleType.Number),

};

parameters[0].Value = dataGridView1.CurrentRow.Cells["商品编号"].Value.ToString();

parameters[0].Direction = ParameterDirection.Input;

foreach (OracleParameter parameter in parameters)

{

cmd.Parameters.Add(parameter);

}

cmd.CommandType = CommandType.StoredProcedure;

cmd.ExecuteNonQuery();

con.Close();

dataGridView1.Rows.Remove(dataGridView1.CurrentRow);

}

}

private void button2_Click(object sender, EventArgs e)

{

xggoods frm = new xggoods (int.Parse (dataGridView1.CurrentRow.Cells[0].Value.ToString()), dataGridView1.CurrentRow.Cells[1].Value.ToString(), dataGridView1.CurrentRow.Cells["供应商"].Value.ToString());

frm.ShowDialog();

allgoods();

}

private void button4_Click(object sender, EventArgs e)

{

try

{

dataGridView1.AutoGenerateColumns = false;

OracleConnection con = new OracleConnection("Data Source=orcl;User ID=SA;password=123;");

OracleDataAdapter da = new OracleDataAdapter();

OracleCommand cmd = new OracleCommand();

cmd.Connection = con;

cmd.CommandText = "SELECTGOODS";

OracleParameter[] parameters ={

new OracleParameter("gname",OracleType.VarChar ),

};

parameters[0].Value = textBox1.Text;

OracleParameter param_out = cmd.Parameters.Add("P_CURSOR", OracleType.Cursor);

param_out.Direction = ParameterDirection.Output;

foreach (OracleParameter parameter in parameters)

{

cmd.Parameters.Add(parameter);

}

cmd.CommandType = CommandType.StoredProcedure;

da.SelectCommand = cmd;

DataTable dt = new DataTable();

da.Fill(dt);

dataGridView1.DataSource = dt;

}

catch (Exception ex)

{

MessageBox.Show(ex.ToString());

}

}

private void button5_Click(object sender, EventArgs e)

{

dataGridView1.AutoGenerateColumns = false;

allgoods();

}

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417716.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端学习(2169):vue-router安装和配置方式

main.js import VueRouter from vue-router import Vue from vue//安装插件 const routers new VueRouter({//配置之间的关系routes })export default router index.js import VueRouter from vue-router import Vue from vue//安装插件 const routers new VueRouter({//配…

如何在intellj Idea中给新建的项目添加jar包?

1. 假如我加入joda.jar 2. 找到发布的你想要的jar包,下载! 3. 解压刚下载的jar包,复制 4. 在intellj idea中新建一个java项目,然后创建一个专门用于放jar的lib文件夹, 然后添加ctrlv 黏贴刚复制的jar包, 然…

js声明php变量,vue.js怎样声明变量

vue.js声明变量的方法:1、使用let定义,let是块级作用域,函数内部使用let定义后,对函数外部无影响;2、使用var定义,var定义的变量可以修改;3、使用const定义,const定义的变量不可以修…

前端学习(2173):动态路由的跳转

app.vue <template><div id"app"><router-link to"/home">首页</router-link><router-link to"/about">关于</router-link><router-link v-bind:to"/user/userId">用户</router-link&g…

前端测试框架 jasmine 的使用

最近的项目在使用AngulaJs,对JS代码的测试问题就摆在了面前。通过对比我们选择了 Karma jasmine ,使用 Jasmine做单元测试 &#xff0c;Karma 自动化完成&#xff0c;当然了如果使用 Karma jasmine 前提是必须安装 Nodejs。 安装好 Nodejs &#xff0c;使用 npm 安装好必要…

(HDU)1019 --Least Common Multiple(最小公倍数)

描述 一组正整数的最小公倍数&#xff08;LCM&#xff09;是可以被集合中所有数字整除的最小正整数。 例如&#xff0c;5,7和15的LCM为105。输入 输入将包含多个问题实例。 输入的第一行将包含指明问题实例数量的单个整数。 每个实例将由形式为m n1 n2 n3 ... nm的单行组成&…

如何将exe文件在linux下执行,如何在Linux系统下查找可执行文件

可执行文件是指可移植可执行的文件&#xff0c;用于程序的执行&#xff0c;那么Linux下要如何查找可执行文件呢&#xff1f;下面小编就给大家介绍下Linux中查找可执行文件的方法&#xff0c;一起来了解下吧。linux下查找可执行文件ls -F|grep “*”这样就可以了&#xff01;ls …

前端学习(2176):vue-router的路由的嵌套使用

app.vue <template><div id"app"><router-link to"/home">首页</router-link><router-link to"/about">关于</router-link><router-link v-bind:to"/user/userId">用户</router-link&g…

前端学习(2177):vue-router得参数传递

app.vue <template><div id"app"><router-link to"/home">首页</router-link><router-link to"/about">关于</router-link><router-link v-bind:to"/user/userId">用户</router-link&g…

前端学习(2178):vue-router得参数传递二

app.vue <template><div id"app"><router-link to"/home">首页</router-link><router-link to"/about">关于</router-link><button click"userClick">用户</button><button clic…

linux系统登陆问题,Linux之登陆问题

今天早上在使用Linux的时候进入终端输入startx&#xff0c;然后退出图形界面&#xff0c;进入了命令模式&#xff0c;可能是Ubuntu 14.04的问题&#xff0c;不知怎么就没有响应&#xff0c;我就强行重启了一下操作系统&#xff0c;然后进去发现在使用管理员账号登录时一直是重复…

前端学习(2180):vue-router全局导航守卫

app.vue <template><div id"app"><router-link to"/home">首页</router-link><router-link to"/about">关于</router-link><button click"userClick">用户</button><button clic…

(HDU)1058 --Humble Numbers( 丑数)

题目链接&#xff1a;http://vjudge.net/problem/HDU-1058 这题有点难度&#xff0c;自己写了半天依旧TLE&#xff0c;参考了其他人的博客。 http://blog.csdn.net/pythonfx/article/details/7292835 http://blog.csdn.net/x_iya/article/details/8774087 第二个人的博客用的是…

linux线程引起jvm崩溃,JVM宕机分析

1、可以引发JVM崩溃的常见缘由有&#xff1a;linux线程阻塞数据库CPU 使用率太高服务器JVM Crash工具堆内存不足google类装载spaJava虚拟机自身的Bug操作系统JDK与服务器(CPU、内存、操做系统)的兼容性.net内存溢出插件2、日志文件hs_err_pid.log&#xff0c;致命错误出现的时候…

ie9 Flash内容无法显示

Flash 插件(Shockwave Flash Object)启用&#xff1a; 在IE9页面右上角单击设置按钮&#xff0c;打开“管理加载项”。 查看一下 Shockwave Flash Object 的状态。如果被真被禁用了&#xff0c;将其选中&#xff0c;然后右击&#xff0c;选择“启用”。 ActiveX 筛选关闭&#…