未找到结果

没有与搜索匹配的结果

Oracle Database XE 快速入门

如果您有安装软件的经验,请使用下面提供的步骤。
有关更多信息和完整的步骤说明,请参阅 LinuxWindows 安装指南。

安装 Oracle Database XE

 

Oracle Linux

兼容 Red Hat 的 Linux 发行版

  • 下载 oracle-database-xe-18c-1.0-1.x86_64.rpm
  • 运行“curl -o oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm”
  • 运行“yum -y localinstall oracle-database*18c*”
  • 运行“/etc/init.d/oracle-xe-18c configure”

Windows

  • 使用属于管理员组成员的用户登录 Windows。
  • 如果已设置 ORACLE_HOME 环境变量,则取消设置。
  • 下载 OracleXE184_Win64.zip
  • 将 zip 文件解压缩到本地临时目录并运行 setup.exe。
  • 在安装程序提示时,提供安装位置、数据库密码,然后开始安装。
  • 安装完成后,请记下最终屏幕上提供的连接字符串。
     
    注意:重新启动 Windows 时,可插拔数据库(例如:XEPDB1)将无法打开,也不可用。有关如何在 Windows 启动时自动打开可插拔数据库的详细信息,请参阅 Oracle Database 18c XE Windows 安装指南第 7 章。

Docker

可以使用 https://github.com/oracle/docker-images 中提供的 Dockerfiles 构建 Linux Docker 映像

VirtualBox

可以使用 https://github.com/oracle/vagrant-boxes 中提供的 Vagrant 脚本构建 Linux VirtualBox VM。如果支持 WIndows 版本,您还可以安装到 Windows VirtualBox VM 中。阅读 Oracle Database 18c XE Windows 安装指南

 

连接到 Oracle Database XE

 

SQL

  • -- 连接字符串格式:[用户名]/[密码]@//[主机名]:[端口]/[DB 服务名] [AS SYSDBA]
  • -- 要连接到容器数据库 (CDB),请使用:
  • sqlplus sys/GetStarted18c@//localhost:1521/XE as sysdba
  •  
  • -- 要连接到每一个可插拔数据库 (PDB),请使用:
  • sqlplus sys/GetStarted18c@//localhost:1521/XEPDB1 as sysdba

Java

  • OracleDataSource ods = new OracleDataSource();
  • ods.setURL("jdbc:oracle:thin:@//localhost:1521/XEPDB1"); // jdbc:oracle:thin@//[主机名]:[端口]/[DB 服务名]
  • ods.setUser("system"); // [用户名]
  • ods.setPassword("GetStarted18c"); // [密码]
  • Connection conn = ods.getConnection();
     
  • PreparedStatement stmt = conn.prepareStatement("SELECT 'Hello World!'FROM dual");
  • ResultSet rslt = stmt.executeQuery();
  • while (rslt.next()) {
      System.out.println(rslt.getString(1));
    }

Python

  • import cx_Oracle
     
  • # 连接字符串格式:[用户名]/[密码]@//[主机名]:[端口]/[DB 服务名]
  • conn = cx_Oracle.connect("system/GetStarted18c@//localhost:1521/XEPDB1")
  • cur = conn.cursor()
  • cur.execute("SELECT 'Hello World!'FROM dual")
  • res = cur.fetchall()
  • print(res)

Node.js

  • var oracledb = require('oracledb');
     
  •   async function run() {
  •       let connection = await oracledb.getConnection( {
  •       user :"system", // [用户名]
  •       password :"GetStarted18c", // [密码]
  •       connectString :"localhost:1521/XEPDB1" //[主机名]:[端口]/[DB 服务名]
  •     });
  •     let result = await connection.execute( "SELECT 'Hello World!'FROM dual");
  •     console.log(result.rows[0]);
  •   }
     
  •   run();

C# / .NET

  • // 连接字符串格式:User Id=[用户名];Password=[密码];Data Source=[主机名]:[端口]/[DB 服务名];
  • OracleConnection con = new OracleConnection("User Id=system;Password=GetStarted18c;Data
  • Source=localhost:1521/XEPDB1;");
  • con.Open();
  • OracleCommand cmd = con.CreateCommand();
  • cmd.CommandText = "SELECT \'Hello World!\' FROM dual";
     
  • OracleDataReader reader = cmd.ExecuteReader();
  • reader.Read();
  • Console.WriteLine(reader.GetString(0));

PHP

  • //[用户名], [密码], //[主机名]:[端口]/[DB 服务名]
  • $c = oci_pconnect("system", "GetStarted18c", "//localhost:1521/XEPDB1");
  • $s = oci_parse($c, "SELECT 'Hello World!'FROM dual");
  • oci_execute($s);
  • oci_fetch_all($s, $res);
  • echo "<pre>\n"
  • var_dump($res);
  • echo "</pre>\n";

Ruby

  • require 'oci8'
     
  • //"[用户名]/[密码]@//[主机名]:[端口]/[DB 服务名]"
  • con = OCI8.new("system/GetStarted18c@//localhost:1521/XEPDB1")
  • statement = "SELECT 'Hello World!'FROM dual"
  • cursor = con.parse(statement)
  • cursor.exec
  • cursor.fetch do |row|
  •   print row
  • end

Go

  • package main
     
  • import (
  •   "database/sql"
  •   "fmt"
  •   "log"
  •   _ "gopkg.in/goracle.v2"
  • )
     
  • func main() {
     
  •   // 连接字符串格式:[用户名]/[密码]@//[主机名]:[端口]/[DB 服务名]
  •   db, err := sql.Open("goracle", "system/GetStarted18c@//localhost:1521/XEPDB1")
  •   if err != nil {
  •     log.Fatal(err)
  •   }
  •   defer db.Close()
     
  •   rows, err := db.Query("SELECT 'Hello World!'FROM dual")
  •   if err != nil {
  •     log.Fatal(err)
  •   }
  •   defer rows.Close()
     
  •   var strVal string
  •   for rows.Next() {
  •     err := rows.Scan(&strVal)
  •     if err != nil {
  •       log.Fatal(err)
  •     }
  •     fmt.Println(strVal)
  •   }
  •   err = rows.Err()
  •   if err != nil {
  •     log.Fatal(err)
  •   }
     
  • }