Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. Database & SysAdmin
  3. Database
  4. Oracle invalid character

Oracle invalid character

Scheduled Pinned Locked Moved Database
helpcsharpdatabaseoraclequestion
16 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • F Offline
    F Offline
    Firo Atrum Ventus
    wrote on last edited by
    #1

    I'm using c# and trying to access oracle here's my code:

            try
            {
                String connString = "Provider=MSDAORA;Data Source=127.0.0.1;User id=system;Password=akar;";
                string query = "insert into test values(" + textBox2.Text + ", \`" + textBox3.Text + "\`, \`" + textBox4.Text + "\`);";
                MessageBox.Show(query);
                OleDbConnection myConnection = new OleDbConnection(connString);
                OleDbCommand myCommand = new OleDbCommand(query, myConnection);
                myConnection.Open();
                OleDbDataReader myReader = myCommand.ExecuteReader();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.StackTrace);
            }
    

    That code works just fine when I use select, but when I change it into insert it throws an ORA-00911 Invalid Character error at this code OleDbDataReader myReader = myCommand.ExecuteReader(); Can anyone help me, please?

    _ 1 Reply Last reply
    0
    • F Firo Atrum Ventus

      I'm using c# and trying to access oracle here's my code:

              try
              {
                  String connString = "Provider=MSDAORA;Data Source=127.0.0.1;User id=system;Password=akar;";
                  string query = "insert into test values(" + textBox2.Text + ", \`" + textBox3.Text + "\`, \`" + textBox4.Text + "\`);";
                  MessageBox.Show(query);
                  OleDbConnection myConnection = new OleDbConnection(connString);
                  OleDbCommand myCommand = new OleDbCommand(query, myConnection);
                  myConnection.Open();
                  OleDbDataReader myReader = myCommand.ExecuteReader();
              }
              catch (Exception ex)
              {
                  MessageBox.Show(ex.StackTrace);
              }
      

      That code works just fine when I use select, but when I change it into insert it throws an ORA-00911 Invalid Character error at this code OleDbDataReader myReader = myCommand.ExecuteReader(); Can anyone help me, please?

      _ Offline
      _ Offline
      _Damian S_
      wrote on last edited by
      #2

      Is it because you have copied and pasted your code from some kind of word processing program, and your single quotes are special characters rather than standard single quotes?

      Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

      F 1 Reply Last reply
      0
      • _ _Damian S_

        Is it because you have copied and pasted your code from some kind of word processing program, and your single quotes are special characters rather than standard single quotes?

        Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

        F Offline
        F Offline
        Firo Atrum Ventus
        wrote on last edited by
        #3

        well, I've tried using "'" but it doesn't work either

        _ 1 Reply Last reply
        0
        • F Firo Atrum Ventus

          well, I've tried using "'" but it doesn't work either

          _ Offline
          _ Offline
          _Damian S_
          wrote on last edited by
          #4

          Oh, hang on... you haven't listed the fields for your insert into... insert into test (field1, field2, field3) values (...);

          Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

          F 1 Reply Last reply
          0
          • _ _Damian S_

            Oh, hang on... you haven't listed the fields for your insert into... insert into test (field1, field2, field3) values (...);

            Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

            F Offline
            F Offline
            Firo Atrum Ventus
            wrote on last edited by
            #5

            Here, I've changed my code into this:

            string query = "insert into test(no, name, dob) values(" + textBox2.Text + ", '" + textBox3.Text + "', '" + textBox4.Text + "');";

            But I still got the error -ps:column no is int others are varchar

            A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

            _ 1 Reply Last reply
            0
            • F Firo Atrum Ventus

              Here, I've changed my code into this:

              string query = "insert into test(no, name, dob) values(" + textBox2.Text + ", '" + textBox3.Text + "', '" + textBox4.Text + "');";

              But I still got the error -ps:column no is int others are varchar

              A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

              _ Offline
              _ Offline
              _Damian S_
              wrote on last edited by
              #6

              Hmmm... have you tried executing your sql directly to check that it's working as you expect?

              Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

              F 1 Reply Last reply
              0
              • _ _Damian S_

                Hmmm... have you tried executing your sql directly to check that it's working as you expect?

                Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

                F Offline
                F Offline
                Firo Atrum Ventus
                wrote on last edited by
                #7

                yep, it works in sql -ps:fyi, that code works when a button is clicked. after I've changed it into showing the query it shows this insert into test(no, name, dob) values(23, 'sawqwd', '322');

                A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                _ 1 Reply Last reply
                0
                • F Firo Atrum Ventus

                  yep, it works in sql -ps:fyi, that code works when a button is clicked. after I've changed it into showing the query it shows this insert into test(no, name, dob) values(23, 'sawqwd', '322');

                  A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                  _ Offline
                  _ Offline
                  _Damian S_
                  wrote on last edited by
                  #8

                  Well, if the code works when the button is clicked, and the sql works if you copy/paste it into Oracle and run it directly, there must be an error in the calling of the querydef... Do you have the correct syntax, parameters, names etc?

                  Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

                  F 1 Reply Last reply
                  0
                  • _ _Damian S_

                    Well, if the code works when the button is clicked, and the sql works if you copy/paste it into Oracle and run it directly, there must be an error in the calling of the querydef... Do you have the correct syntax, parameters, names etc?

                    Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

                    F Offline
                    F Offline
                    Firo Atrum Ventus
                    wrote on last edited by
                    #9

                    Silly me, I actually only need to remove the semicolon and it works :omg:

                    string query = "insert into test(no, name, dob) values(" + textBox2.Text + ", '" + textBox3.Text + "', '" + textBox4.Text + "')";

                    Guess that would mean no semicolons when connecting from c# huh? :doh: It's so different from J2SE, :laugh: Thank for the assistance :)

                    A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                    modified on Thursday, May 26, 2011 1:50 AM

                    _ L J 3 Replies Last reply
                    0
                    • F Firo Atrum Ventus

                      Silly me, I actually only need to remove the semicolon and it works :omg:

                      string query = "insert into test(no, name, dob) values(" + textBox2.Text + ", '" + textBox3.Text + "', '" + textBox4.Text + "')";

                      Guess that would mean no semicolons when connecting from c# huh? :doh: It's so different from J2SE, :laugh: Thank for the assistance :)

                      A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                      modified on Thursday, May 26, 2011 1:50 AM

                      _ Offline
                      _ Offline
                      _Damian S_
                      wrote on last edited by
                      #10

                      Dammit... the semicolon was the first thing I was going to mention, but when I checked oracle sql syntax it was there... :sigh: Glad you got it fixed!!

                      Reminiscing just isn't what it used to be!! Booger Mobile - My bright green 1964 Ford Falcon - check out the blog here!! | If you feel generous - make a donation to Camp Quality!!

                      1 Reply Last reply
                      0
                      • F Firo Atrum Ventus

                        Silly me, I actually only need to remove the semicolon and it works :omg:

                        string query = "insert into test(no, name, dob) values(" + textBox2.Text + ", '" + textBox3.Text + "', '" + textBox4.Text + "')";

                        Guess that would mean no semicolons when connecting from c# huh? :doh: It's so different from J2SE, :laugh: Thank for the assistance :)

                        A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                        modified on Thursday, May 26, 2011 1:50 AM

                        L Offline
                        L Offline
                        Lost User
                        wrote on last edited by
                        #11

                        It is not related to the language, could be a feature of the Provider MSDAORA that you're using.

                        1 Reply Last reply
                        0
                        • F Firo Atrum Ventus

                          Silly me, I actually only need to remove the semicolon and it works :omg:

                          string query = "insert into test(no, name, dob) values(" + textBox2.Text + ", '" + textBox3.Text + "', '" + textBox4.Text + "')";

                          Guess that would mean no semicolons when connecting from c# huh? :doh: It's so different from J2SE, :laugh: Thank for the assistance :)

                          A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                          modified on Thursday, May 26, 2011 1:50 AM

                          J Offline
                          J Offline
                          jschell
                          wrote on last edited by
                          #12

                          Firo Atrum Ventus wrote:

                          Guess that would mean no semicolons when connecting from c# huh?

                          Conceptually you are executing a 'statement'. That is implicit. The semi-colon is superfluous in that context. You can however construct a statement which is composed of other statements. In that case the internal statements would require a semi-colon.

                          F 1 Reply Last reply
                          0
                          • J jschell

                            Firo Atrum Ventus wrote:

                            Guess that would mean no semicolons when connecting from c# huh?

                            Conceptually you are executing a 'statement'. That is implicit. The semi-colon is superfluous in that context. You can however construct a statement which is composed of other statements. In that case the internal statements would require a semi-colon.

                            F Offline
                            F Offline
                            Firo Atrum Ventus
                            wrote on last edited by
                            #13

                            Nah, I've tried that too. It didn't work. :confused:

                            A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                            J 1 Reply Last reply
                            0
                            • F Firo Atrum Ventus

                              Nah, I've tried that too. It didn't work. :confused:

                              A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                              J Offline
                              J Offline
                              jschell
                              wrote on last edited by
                              #14

                              Firo Atrum Ventus wrote:

                              Nah, I've tried that too. It didn't work.

                              You would need to post what didn't work.

                              F 1 Reply Last reply
                              0
                              • J jschell

                                Firo Atrum Ventus wrote:

                                Nah, I've tried that too. It didn't work.

                                You would need to post what didn't work.

                                F Offline
                                F Offline
                                Firo Atrum Ventus
                                wrote on last edited by
                                #15

                                Everything's the same as above except this line

                                string query = "insert into test values(" + textBox2.Text + ", `" + textBox3.Text + "`, `" + textBox4.Text + "`);";

                                changed into

                                string query = "insert into test values(" + textBox2.Text + ", `" + textBox3.Text + "`, `" + textBox4.Text + "`);select * from test";

                                A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                                J 1 Reply Last reply
                                0
                                • F Firo Atrum Ventus

                                  Everything's the same as above except this line

                                  string query = "insert into test values(" + textBox2.Text + ", `" + textBox3.Text + "`, `" + textBox4.Text + "`);";

                                  changed into

                                  string query = "insert into test values(" + textBox2.Text + ", `" + textBox3.Text + "`, `" + textBox4.Text + "`);select * from test";

                                  A hidden needle is way more effective than an unsheathed sword. That is, in the hand of professionals. What about you? Just pray your enemies are blind

                                  J Offline
                                  J Offline
                                  jschell
                                  wrote on last edited by
                                  #16

                                  The second is not a statement. It is two statements. Investigate the use of Begin/End. Do it in a SQL browser/gui first before attempting to code it in C#.

                                  1 Reply Last reply
                                  0
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes


                                  • Login

                                  • Don't have an account? Register

                                  • Login or register to search.
                                  • First post
                                    Last post
                                  0
                                  • Categories
                                  • Recent
                                  • Tags
                                  • Popular
                                  • World
                                  • Users
                                  • Groups