OceanBase
English日本語简体中文
Docs Home
Products
Integrations
Release Notes

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog ServiceOceanBase DataPilot

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Databases

OceanBase DatabaseOceanBase Cloud OceanBase Best Practices

Connectors and Middleware

OceanBase Database Proxy OceanBase Connector/C OceanBase Connector/J OceanBase Connector/ODBC OceanBase Connector/NETOceanBase Command-Line Client

Tools

OceanBase Cloud PlatformOceanBase Migration ServiceOceanBase Developer CenterOceanBase Migration AssessmentOceanBase Admin ToolOceanBase Loader and DumperOceanBase DeployerKubernetes operator for OceanBaseOceanBase Diagnostic Tool OceanBase Binlog ServiceOceanBase DataPilot
OceanBase DatabaseOceanBase Cloud ToolsConnectors and MiddlewareLifecycle Support Policy

Embedded SQL in C for OceanBase

V1.1.7Enterprise Edition
  • What's New
  • What is ECOB?
  • ECOB compatibility with Pro*C
  • Install ECOB
  • Data types and variables
    • Overview
    • Supported data types
    • Data type conversion
    • Indicator variable
    • VARCHAR variable
    • Structure
    • String pointer
  • Embedded SQL statements
    • Overview
    • Variable declaration
    • Connect to OceanBase databases
    • Basic SQL statements
    • Prepared statements
    • Stored procedures
    • Cursor
    • Simple dynamic SQL statement
    • ANSI dynamic SQL statements
    • Error handling
      • SQLCA structure
      • WHENEVER statement
    • LOB-related SQL statements
  • Use ECOB
    • Environment preparation
    • Use ECOB
    • Compile the Tuxedo service
  • Command Line Options

Download PDF

Document Feedback
  1. Documentation Center
  2. Embedded SQL in C for OceanBase
  3. V1.1.7

Prepared statements

Last Updated:2026-09-04 08:37:38

PREPARE
EXECUTE

OceanBase Embedded SQL in C (ECOB) supports the following statements related to the prepared (precompiled) statements: PREPARE and EXECUTE. They are dynamic SQL statements and can include a fixed number of input or output host variables.

PREPARE

You can execute the PREPARE statement to prepare (precompile) an SQL statement in PS mode.

Syntax:

EXEC SQL PREPARE (statement_id) FROM (:host_string | 'sql text' | select_command)

Screenshot 2020-10-14 23.02.28.png

Sample statement:

char * sql = "insert into proctest(c1,c2,c3) values (:c1,:c2,:c3)";
EXEC SQL PREPARE stat FROM :sql;

EXECUTE

You can execute the EXECUTE statement to execute a prepared SQL statement.

Syntax:

EXEC SQL EXECUTE (statement_id) [USING :host_variable [ [INDICATOR] :indicator_variable] 
EXEC SQL EXECUTE (statement_id) [INTO :host_variable] 
EXEC SQL EXECUTE (statement_id) [USING SQL DESCRIPTOR descriptor]

EXECUTE syntax 1EXECUTE syntax 2EXECUTE syntax 2

Sample statement:

int c1val = 10;
int c2val = 20;
char c3val[100];
int c4val = 0;
char * sql = "insert into t1(c1,c2,c3) values (:c1,:c2,:c3)";
memset(c3val,0,sizeof(c3val));
EXEC SQL CRETAE TABLE t1 (c1 int,c2 int ,c3 varchar2(100));
EXEC SQL PREPARE stat FROM :sql;
strcpy(c3val,"this is a demo");
EXEC SQL EXECUTE stat USING :c1val,:c2val,:c3val;
EXEC SQL PREPARE q FROM 'delete from t1';
EXEC SQL EXECUTE q;
EXEC SQL PREPARE ps FROM 'select 1 from dual';
EXEC SQL EXECUTE ps INTO :c4val;
EXEC SQL ALLOCATE DESCRIPTOR in_desc;
EXEC SQL EXECUTE ps USING SQL SQL_DESCRIPTOR in_desc;
EXEC SQL DROP TABLE t1;
EXEC SQL DEALLOCATE DESCRIPTOR in_desc;

Previous topic

Basic SQL statements
Last

Next topic

Stored procedures
Next
on this page
PREPARE
EXECUTE