.net连接oracle数据库---Shinepans
常见问题:
1.缺少引用 解决办法 ,添加引用:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.OracleClient; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.Common; using Oracle.DataAccess;
2.连接字符串:
globals.connectionString = "Data Source="+this.databaseName.Text.Trim()+";uid="+this.username.Text.Trim()+";pwd="+this.password.Text.Trim()+";";
globals.username = this.username.Text.Trim();
globals.databaseName = this.databaseName.Text.Trim();这是我的一贯风格,喜欢用globals类管理通用的字符串.方便管理,通过上面的代码就可以知道连接字符串了.
3.查询:
查询格式如上
运行结果:
1.登录:
2.登录结果:

3.显示主界面 (测试)

4.查询数据库:

至此,查询功能已完成
关键点:
1.查询语句中,不要带分号,会提示关键字错误
2.引用要添加好:
using System.Data.Common;
using Oracle.DataAccess;
3.连接字符串要写好:
"Data Source=shinepans;uid=system;pwd=123;unicode=True"
上面的改写成你的
代码片:
Program.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace Net3._5_oracleTest
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new LoginForm());
}
}
}
LoginForm.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Net3._5_oracleTest
{
public partial class LoginForm : Form
{
public LoginForm()
{
InitializeComponent();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
globals.connectionString = "Data Source="+this.databaseName.Text.Trim()+";uid="+this.username.Text.Trim()+";pwd="+this.password.Text.Trim()+";";
globals.username = this.username.Text.Trim();
globals.databaseName = this.databaseName.Text.Trim();
OracleConnection conn = new OracleConnection(globals.connectionString);
try
{
conn.Open();
MessageBox.Show("已连接到Oracle数据库!");
MainForm mf = new MainForm();
this.Hide();
mf.Show();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}finally
{
conn.Close();
}
}
}
}
MainForm.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Net3._5_oracleTest
{
public partial class LoginForm : Form
{
public LoginForm()
{
InitializeComponent();
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
globals.connectionString = "Data Source="+this.databaseName.Text.Trim()+";uid="+this.username.Text.Trim()+";pwd="+this.password.Text.Trim()+";";
globals.username = this.username.Text.Trim();
globals.databaseName = this.databaseName.Text.Trim();
OracleConnection conn = new OracleConnection(globals.connectionString);
try
{
conn.Open();
MessageBox.Show("已连接到Oracle数据库!");
MainForm mf = new MainForm();
this.Hide();
mf.Show();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}finally
{
conn.Close();
}
}
}
}
GridView_UserInfo.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OracleClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.Common;
using Oracle.DataAccess;
namespace Net3._5_oracleTest
{
public partial class GrideViews_UserInfo : Form
{
public GrideViews_UserInfo()
{
InitializeComponent();
}
private void GrideViews_UserInfo_Load(object sender, EventArgs e)
{
string sql1 = "SELECT * FROM infoofuser";
OracleConnection myconn = new OracleConnection(globals.connectionString);
OracleCommand mycmd = myconn.CreateCommand();
mycmd.CommandText = sql1;
myconn.Open();
OracleDataAdapter oraDA = new OracleDataAdapter(mycmd);
DataSet ds = new DataSet();
oraDA.Fill(ds);
myconn.Close();
DataTable dtbl = ds.Tables[0];
this.dataGridView1.DataSource = dtbl;
}
}
}
总结:
如果你的引用没有我说的两个,需要在项目里找引用,然后右键选择添加这个是大家都知道的,oracle的各种错误让人烦恼不已,各种错误,幸好有百度,可以查询错在哪里,所以不要害怕困难,多总结.
本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.
同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。