Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7809221
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 2, 20262026-06-02T03:21:48+00:00 2026-06-02T03:21:48+00:00

Could anyone please point me to where the characters allowed for a bind variable

  • 0

Could anyone please point me to where the characters allowed for a bind variable name are listed? I’ve spent several hours digging through Oracle SQL docs to no avail.

I mean “:id” in the following:

SELECT * FROM mytable WHERE id = :id

E.g. can a dot be used there like “:some.id”? Will it function exactly like the version without the dot?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-02T03:21:50+00:00Added an answer on June 2, 2026 at 3:21 am

    These pages both state bind variables must be "legal Oracle identifiers"
    The documentation I found doesn’t specifically say that a dot can
    be part of a legal identifer. I was able to use a dot in both
    a table name and as a bind variable name, but it looks like it is
    not recommended.

    PAGES THAT HAVE BIND VARIABLE NAMING CONVENTIONS
    (These pages state a bind variable must be a legal identifier):

    http://www.utoug.org/i/doc/concept_bind_var.htm

    http://docs.oracle.com/cd/E23903_01/doc.41/e21674/concept_ses_val.htm#BEIEGCCC

    PAGE THAT DESCRIBES LEGAL IDENTIFIERS:
    http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements008.htm

    I could not find anything on this page that says that a dot is a legal
    part of an identifier (E.G. table or bind variable name) except in a DB link.
    Even though $ and # are legal, they are not even recommended, so "."
    may work but is obviously not recommended (not even mentioned as legal on
    this page)

    Bind variable names must correspond to an item name.
    Bind variable names are not case-sensitive.
    Bind variable names cannot be longer than 30 characters (that is, they must be a valid Oracle identifier).

    I know that a valid ORACLE identifer (based on ORACLE’s definition
    of a legal identifier) cannot start with a number,
    and can have SOME special characters like $ and . but if there are
    special characters the identifier MUST be in double quotes.

    I was able to get an identifier with a dot to work in a bind
    variable, but I had to put double quotes around the bind
    variable when the bind variable had a dot in it.

    create or replace function F0416B
    RETURN VARCHAR2
    is
        V_STMT    VARCHAR2(1999);
        V_RESULT  VARCHAR2(1999);
    BEGIN 
        V_STMT := 'INSERT INTO TEST0411(FIELD1, FIELD2) VALUES ( :"A.1" , :"A.2")';
        EXECUTE IMMEDIATE V_STMT USING  'AS201', 'AS202';
        RETURN 'INSERT-OK';
        COMMIT;
    EXCEPTION
    WHEN OTHERS THEN RETURN SQLERRM;
    END;    
    

    #This may work but according to the above documentation a period/dot
    in a bind variable or other object name is not legal/recommended…

    #This is the sentence on the ORACLE schema object naming page that is
    telling me this:

    Nonquoted identifiers can contain only alphanumeric characters from your database character set and the underscore (_), dollar sign ($), and pound sign (#). Database links can also contain periods (.) and "at" signs (@). Oracle strongly discourages you from using $ and # in nonquoted identifiers.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

could anyone point me in the direction on how to do this please? i
Please could anyone point me in the right direction for the reentrant exceptions I'm
Could anyone please point me to an API that works on windows 7 for
Could anyone please tell me if there is any code to convert floating point
Could anyone please give me a quick overview/point me to documentation of a way
could anyone please clarify the meaning of line generalizes the tag object's storage of
Could anyone please tell me why the following line about filter init method invocation
could anyone please tell me, where in Javascript the difference between MyClass.prototype = new
Could anyone please tell me why the following casting is resulting in compile time
Could anyone please tell how jre directory help in the running java programs? I'm

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.