首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >从apache spark java连接到oracle本地数据库时出错

从apache spark java连接到oracle本地数据库时出错
EN

Stack Overflow用户
提问于 2017-01-10 05:52:59
回答 2查看 1.6K关注 0票数 1

下面是我使用的代码,用于从程序连接到oracle本地数据库,但是我得到了错误:

java.sql.SQLSyntaxErrorException: ORA-00903:无效表名

这是我的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public static void main( String[] args )
{
  String MYSQL_DRIVER = "oracle.jdbc.driver.OracleDriver";
  String MYSQL_CONNECTION_URL = "jdbc:oracle:thin:@//192.168.2.85:1521/stage";

  JavaSparkContext sc = new JavaSparkContext(new SparkConf().setAppName("SparkJdbcDs").setMaster("local[*]"));
  SQLContext sqlContext = new SQLContext(sc);

  Map<String, String> options = new HashMap<String, String>();
  options.put("driver", MYSQL_DRIVER);
  options.put("url", MYSQL_CONNECTION_URL);
  options.put("dbtable", "select LOC_ITEM_ID from loc_item_master");
  options.put("partitionColumn", "LOC_ITEM_ID");
  options.put("user", "ad_tables"); 
  options.put("password", "ad_tables"); 
  options.put("lowerBound", "4467");
  options.put("upperBound", "4749");
  options.put("numPartitions", "10");
  try {
        Dataset<Row> jdbcDF = sqlContext.load("jdbc", options);
        List<Row> employeeFullNameRows = jdbcDF.collectAsList();

        for (Row employeeFullNameRow : employeeFullNameRows) {
            System.out.println(employeeFullNameRow);
        }

        sc.close();

  } catch (Exception e) {
        e.printStackTrace();
  }

}

下面是POM文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<dependencies>

        <dependency>
            <groupId>com.databricks</groupId>
            <artifactId>spark-csv_2.11</artifactId>
            <version>1.5.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.univocity/univocity-parsers -->
        <dependency>
            <groupId>com.univocity</groupId>
            <artifactId>univocity-parsers</artifactId>
            <version>2.3.0</version>
        </dependency>

        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-mllib_2.11</artifactId>
            <version>2.0.1</version>
        </dependency>

    <dependency> <!-- Spark dependency -->
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-core_2.11</artifactId>
      <version>2.0.1</version>
    </dependency>
        <dependency>
            <groupId>org.apache.spark</groupId>
            <artifactId>spark-sql_2.11</artifactId>
            <version>2.0.1</version>
        </dependency>

        <dependency>
    <groupId>com.oracle</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.3</version>
</dependency>
</dependencies>
EN

回答 2

Stack Overflow用户

发布于 2017-05-07 22:09:46

你可以试试下面的方法。看起来不错。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class OracleDatabaseConnection {

 public static void main(String[] args) {

  System.setProperty("hadoop.home.dir", "C:\\AD_classfication\\Apachespark\\winutil");
  JavaSparkContext sc = new JavaSparkContext(new SparkConf().setAppName("SparkJdbcDs").setMaster("local[*]"));
  SQLContext sqlContext = new SQLContext(sc);
  SparkSession spark = SparkSession.builder().appName("JavaTokenizerExample").getOrCreate();
  Properties connectionProperties = new Properties();
  connectionProperties.put("user", "ad_tables");
  connectionProperties.put("password", "ad_tables");
  String query = "sparkour.people";
  query = "(select LOC_ITEM_ID from loc_item_master)";
  Dataset<Row> jdbcDF2 = spark.read().jdbc("jdbc:oracle:thin:@//192.168.2.85:1522/stage", query,connectionProperties);
  jdbcDF2.show();

 }
}
票数 2
EN

Stack Overflow用户

发布于 2017-01-11 00:44:30

您的dbtable不正确,请尝试:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 options.put("dbtable", "(select LOC_ITEM_ID from loc_item_master) as loc_item_id");

dbtable中的所有内容都应该是有效的FROM片段。

你不能写:select ... from select LOC_ITEM_ID from loc_item_master,但是你可以写select ... from (select LOC_ITEM_ID from loc_item_master) as loc_item_id

当然,表的模式也必须是确定的,您可以在查询中使用schema.table样式指定它

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41570500

复制
相关文章
Cocoa编程中视图控制器与视图类详解
iPhone编程规则是:一个窗口,多个视图。UIView是iPhone屏幕上很多控件的基础类。每个iPhone用户界面都是由显示在UIWindow(这其实也是个特殊的UIView)内的众多UIView及其专门化子类构建的。 显示数据的视图: UITextView UILabel UIImageView UIWebView MKMapViews UIScrollView 可选择的视图(以下两个视图类实例都是模态显示的): UIAlertView UIActionSheet  所有控件(控件是将用户触摸转换为回
猿人谷
2018/01/17
5.1K0
Cocoa编程中视图控制器与视图类详解
VCTransitionsLibrary –自定义iOS交互式转场动画的库
本文介绍了一种用于iOS的交互式转场实现方案,通过使用UIKit Dynamics和UIKit Layout实现自定义转场效果。具体实现包括两个部分:一是交互式转场动画的实现,通过CGAffineTransformAnimation结合UIView.animateWithDuration()方法实现;二是交互式转场交互的实现,通过监听UIViewControllerTransitionCoordinator方法实现。该方案适用于界面之间的复杂转场交互场景,可以自定义转场动画和交互逻辑,实现更加顺滑、自然的界面转场效果。
ios122
2018/01/02
1.6K0
从ajax获取参数到控制器Laravel
route Route::get('search', 'ShowstaffController@search'); 接收变量
双面人
2020/02/17
1.2K0
iOS14开发-UIViewController
UIViewController 可以理解为 App 的界面,负责管理 UIView 中显示的内容和用户的交互,主要有以下作用:
YungFan
2021/03/02
2.4K0
iOS TabBarController实例
-(BaseNavigationController*)setTabBarItemWithRootVC:(id)vc Image:(NSString*)imgName SelectedImage:(NSString*)selectedImg { BaseNavigationController *nav = [[BaseNavigationController alloc] init]; [nav.tabBarItem setImage:[[UIImage imageNamed:imgNam
Lee坚武
2019/12/18
5020
玩转iOS转场动画 原
    关于动画在iOS开发中的应用,曾经整理过一系列的博客进行总结。包括简单的UIView层的动画,CALayer层的动画,Autolayout自动布局动画以及CoreAnimation核心动画框架等。本篇博客主要深入讨论视图控制器、导航控制器来进行界面跳转时的专场动画相关内容。之前的动画相关博客列举如下:
珲少
2018/08/15
1.4K0
玩转iOS转场动画
                                                                            原
【IOS开发基础系列】Storyboard专题
        如果你的 app 有大量的窗口,故事板能帮你减少许多用于从一个窗口转到另一个窗口的导航代码。与每个viewcontroller一个单独的 nib 文件不同,你的 app 只需用一个故事板文件(其中可以包含所有的viewcontroller 以及它们之间的关系)即可。
江中散人_Jun
2023/10/16
1.3K0
【IOS开发基础系列】Storyboard专题
(十四)设置导航高亮
如果 <router-link/> 展示的路劲和当前 url 匹配就会自动给当前元素加上 ..router-link-active 这个 class 设置对应的 class 样式就可以了
老怪兽
2023/02/22
8000
(十四)设置导航高亮
iOS页面切换的几种方式
4.UINavigationController实现多层画面跳转,在导航控制器中,载入有层级关系的界面
用户3004328
2018/09/06
2.5K0
iOS结合导航控制器和标签栏控制器
– (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
全栈程序员站长
2022/07/06
6030
iOS 自定义 ViewController 过渡动画
WWDC 2013 session 218: Custom Transitions Using View Controllers
Alan Zhang
2018/10/19
1.4K0
UINavigationController 导航控制器概念属性方法
概念 UINavigationController 继承于 UIViewController 包含:viewcontrollers、NavigationBar、Toolbar 导航控制器是一个堆栈结构,只是其中管理的对象是controller,通过push与pop进行controller的切换,UINavigationController是将这些控件(UINavigationBar,UINavigationItem和UIToolBar)和UIViewController紧密的结合了起来 总结: Naviga
用户2141756
2018/05/18
2.2K0
iOS 15导航栏设置
使用Xcode 13.0运行项目到iOS 15的手机上,出现导航栏黑色。但是在低版本Xcode 运行到手机就没有问题。
莫空9081
2021/09/03
1.9K0
IOS开发之TabBarItem&NavigationBarItem
  想必大家都用过微信,微信间的页面切换是如何做成的呢?接下来我们用storyboard结合着代码来模拟一下微信的视图控制模式。   "工欲善其事,必先利其器",下面主要是对storyboard来进行我们项目框架的搭建的,必要时,用代码实现我们的页面效果。在IOS开发中常用的多视图间的切换大致有TabBarController, NavigationBarController, 和模态窗口。第一次接触模态的概念是在Web前端的内容中接触的。下面将会结合一个实际的效果来简单的介绍一下TabBar和Naviga
lizelu
2018/01/11
1.4K0
IOS开发之TabBarItem&NavigationBarItem
Suffusion设置主导航菜单
换用Suffusion主题之后,把菜单栏变成导航横到网站上方了,但是过了很久之后发现不知道以前从哪里设置的这些东西,今天偶然又找到,赶紧记录下来,以防忘记。
the5fire
2019/02/28
1.4K0
从原理上搞懂如何设置线程池参数大小?
其实线程池的设置是有方法的,不是凭借简单的估算来决定的。今天我们就来看看究竟有哪些计算方法可以复用,线程池中各个参数之间又存在怎样的关系呢? 本文咱们来慢慢聊。
架构师修炼
2020/07/20
9490
从原理上搞懂如何设置线程池参数大小?
脉冲控制仪设置参数_科迈控制器中文说明书
上述 pdaf_info->vendor_type = SENSOR_VENDOR_xxxx; 流程 SENSOR_VENDOR_xxxx 添加
全栈程序员站长
2022/10/04
6180
导航栏的设置 背景 线
一、设置导航栏底线 简单获取底线 - (UIView *)navLine { if (!_navLine) { UIView *backgroundView = [self.navigationController.navigationBar subviews].firstObject; _navLine = backgroundView.subviews.firstObject; } return _navLine; } 2.单个页面
developerbfl
2018/06/05
1.2K0
Swift| 基础语法(五)
总结下 swift下的基础语法,里面涉及到:常量&变量、Swift中的数据类型、逻辑分支、循环、字符串相关、数组和字典、方法的书写调用等内容,考虑到阅读体验分多篇来展示,希望对大家学习swift有所帮助,同时也是对自己的一个总结。
進无尽
2018/09/12
2K0
Swift| 基础语法(五)
iOS开发UINavigation系列四——导航控制器UINavigationController
        在前面的博客中,我么你介绍了UINavigationBar,UINavigationItem和UIToolBar,UINavigationController是将这些控件和UIViewController紧密的结合了起来,使用导航,我们的应用程序层次会更加分明,对controller的管理也更加方便。前几篇博客地址如下:
珲少
2018/08/15
1.8K0
iOS开发UINavigation系列四——导航控制器UINavigationController

相似问题

TabBarController + TableViewController +导航控制器?

22

从TabBarController的导航控制器隐藏BarButton项目

31

在appDelegate.m中设置导航控制器和tabBarController

30

带导航控制器的Tabbarcontroller控制器

20

TabBarController和导航控制器- Swift -登录

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文