网站首页 > 技术文章 正文
以前只使用过SQL Server2016,没有使用过Oracle,今天算是第二天用,昨天主要在电脑上下载安装上Oracle,并安装上了PLSQL Developer 14 (64 bit),请各位大神们指点一二
SQL Server与Oracle比较
1、安装:Oracle更容易安装一些,网上的安装教程都大同小异,下载安装包时直接去官网下载就行了,把两个压缩包解压到一个文件夹中就行,安装过程中基本上没有什么设置的地方;SQL Server就版本比较多了,安装时需要选择的地方多一些。
2、数据库图形界面管理器:SQL server的更好用一些,可能是一直用的习惯了,Oracle的官网下载需要注册,第三方的基本上都收费,当然大家都懂,学习一下也不会去交费,Navicat 16 for Oracle和PLSQL Developer 14都比较好用一些,但是好多课件上都按PLSQL Developer 14讲的,所以还是使用它吧。
3、数据库:这两个有些不一样,目前也没搞清楚,Oracle安装时就装了个ORCL,感觉没有SQL server的直观,并且更依赖于用户名。
SQL Server:进入管理器后在数据库下新建各种表
Oracle:进入管理器后在用户名下新建各种表
C#编程访问Oracle数据库
1、netGet中安装Oracle.ManagedDataAccess
据说这个是最好用的了,Oracle官方出品,有好多个版本,18.6没有其他依赖,更高版本的需要.net 6支持,这里使用的是.net 4.5开发,网上有些教程说需要下载dll文件,需要引用之类的,为了方便还是直接用netGet安装就行了。
2、编写代码,窗体界面如下
private void button1_Click(object sender, EventArgs e)
{
string host = txt_host.Text.ToString();
string user = txt_user.Text.ToString();
string pass = txt_pass.Text.ToString();
string dbname=txt_dbname.Text.ToString();
string sql=txt_sql.Text.ToString();
DataTable dt = new DataTable();
string conString = #34;User Id={user};Password={pass};Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST={host})(PORT=1521))(CONNECT_DATA=(SERVICE_NAME={dbname})));";
using (OracleConnection con = new OracleConnection(conString))
{
using (OracleCommand cmd = con.CreateCommand())
{
try
{
con.Open();
cmd.BindByName = true;
cmd.CommandText = sql;
using (OracleDataAdapter da = new OracleDataAdapter(cmd))
{
da.Fill(dt);
DG_show.DataSource = dt;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message.ToString());
}
}
}
}
可能遇到的问题
1、连接字符串:Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST={host})(PORT=1521))(CONNECT_DATA=(SERVICE_NAME={dbname})),这个一定要有,要么你就得配置app.config文件了,发现配置了也不起作用,也没空想为啥,直接写这里就行了。
2、host地址只能写localhost,不能写本机的IP地址,这是因为需要在net manager中进行监听配置,默认的监听配置是地址1没有地址2,手动增加上地址2就可以了,地址1中的主机是电脑名称不是IP地址。
运行结果
部分笔记
好了,继续学习,哪位有好的教材给推荐一下,感谢!
猜你喜欢
- 2024-10-17 查看oracle用户权限 查看oracle用户有哪些权限
- 2024-10-17 修改oracle数据提示被用户锁住?别人正在用这个表?
- 2024-10-17 Oracle查询表英文名、表中文名、表业务描述、表记录数、字段数量
- 2024-10-17 Oracle如何创建只读用户 oracle只读表可以执行哪些命令
- 2024-10-17 数据库oracle常用字典表 oracle 字典表(dictionary)
- 2024-10-17 详解MySQL用户和权限管理--5大用户权限表、访问控制及权限管理
- 2024-10-17 Oracle表空间了解一下 oracle数据库表空间是什么
- 2024-10-17 Oracle数据库的表有多大呢? oracle数据库一张表能存多少数据
- 2024-10-17 运维必备:Oracle权限管理语句总结
- 2024-10-17 oracle 多表连接查询 join(一) oracle 多表联查
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端md5加密 (49)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- 前端接口 (46)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle约束 (46)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- mac oracle (47)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)