Mysql statement syntax error
hi,
i have an error with my sql statement and i try to find the error but i couldn't could you please help me to find the error in this statement.
sql.append("SELECT * FROM CARS WHERE TO_DAYS('");
sql.append(PickDat + "') >= TO_DAYS('FROM_D')");
sql.append("AND TO_DAYS('");
sql.append(DropDat + "') <= TO_DAYS('UNTIL_D')");
sql.append("AND PICK_UP_DROP ='");
sql.append(pickdropPnt + "'AND CAR_TYPE ='");
sql.append(carclass + "'");
error message :
java.sql.SQLException: Syntax error or access violation: You have an error in your SQL syntax near '' at line 1 java.sql.SQLException: Syntax error or access violation: You have an error in your SQL syntax near '' at line 1
thanks,
yuetNi
hi,
thanks for your reply, i tried to use your idea but it still give me an error which i couldn't understand it.
is it ok if i use the code below to convert a String to Date.
java.sql.Date PickDat = java.sql.Date.valueOf(PDate);
java.sql.Date DropDat = java.sql.Date.valueOf(DDate);
System.out.println("IN CARINFO FUNC." + pickdropPnt + PDate + DDate + carclass);
sql.append("SELECT * FROM CARS");
sql.append("WHERE TO_DAYS('" PickDat "') BETWEEN TO_DAYS('FROM_D') AND TO_DAYS('UNTIL_D') ");
sql.append("AND TO_DAYS('" DropDat "') BETWEEN TO_DAYS('"+PickDat+"') AND TO_DAYS('UNTIL_D') ");
sql.append("AND PICK_UP_DROP ='" + pickdropPnt +"' ");
sql.append("AND CAR_TYPE ='"+carclass + "'");
thanks for your help
regards,
yuetNiSwee
Similar Messages
-
"Syntax error in the MDX statement " in Process chain failure??Urgent pls
Hi Experts,
could any one suggest me the procedure to rectify the below problems in process chain?
1."Syntax error in the MDX statement "
2."Error when getting data (Error when getting data (AXI))"
Rgds,
BHIn which case it'll be that Access has a different date format to MySQL, and you're trying to push the string "'25-Apr-12 10:55 PM" into Access, which it's not understanding. To get around this, you need to treat your variable as a true date/time object, rather than a formatted string.
CFQueryParams should be used on absolutely every database platform, they'll stop your website being vulnerable to SQL Injection attacks for one, which at the moment you're wide open to. Replace your query with something like this:
<cfquery name="input_comments" datasource="#DSN#" username="#DSNUSER#" password="#DSNPASS#">
INSERT INTO comments(
commenter,
comment,
datetime,
post_id
VALUES(
<cfqueryparam cfsqltype="cf_sql_varchar" value="#form.commenter#" />,
<cfqueryparam cfsqltype="cf_sql_varchar" value="#form.comment#" />,
now(),
<cfqueryparam cfsqltype="cf_sql_numeric" value="#form.post_id#" /> )
</cfquery>
The QueryParams will handle the data types for you, and should pass values around more safely and with fewer issues. Assuming you just want to store the current date and time you don't even need to get ColdFusion involved, as databases have their own functions for this. I believe Access' version is simply NOW(), so I've put that in your query.
Give the above a go. -
MySQL syntax error with TestStand 4.0 database logging
I had been using MS Access database to log results which worked fine but the access database is too limited. Switched to MySql. Database works fine and I can query it from Visual C++ and was able to create all my result tables fine from TestStand.
I get a syntax error when actually trying to log results and it has to do with either a missing quote or and extra quote, I can't quite tell. I thought I saw a post on this somewhere but can't find it now. Here is the complaint from TestStand:
An error occurred calling 'LogOneResult' in 'ITSDBLog' of 'zNI TestStand Database Logging'
An error occurred executing a statement.
Statement: UUT_RESULT.
[MySQL][ODBC 3.51 Driver][mysqld-5.0.45-community-nt]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT VALUES' at line 1
Description: [MySQL][ODBC 3.51 Driver][mysqld-5.0.45-community-nt]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DEFAULT VALUES' at line 1
Number: -2147467259
NativeError: 1064
SQLState: 37000
Reported by: Microsoft OLE DB Provider for ODBC Drivers
Description: Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done.
Number: -2147217887
NativeError: 0
SQLState: 37000
Reported by: Microsoft OLE DB Provider for ODBC Drivers
Source: TSDBLog
And here is all that appears in the MySql logfile:
INSERT INTO UUT_RESULT DEFAULT VALUES
070914
You can't see it here but the string is truncated after the word VALUES. The next line starts with the odd number.
Any ideas?
Thanks,
Bill Peters
BAE SYSTEMSSure. There were two bugs in the ini file that contains the default TS schemas (I think it was Default_Database_Options.ini or like that...).
Anyway the table description for STEP_NUMERICLIMIT had for it's command line INSERT INTO MEAS_NUMERICLIMIT. I guess TestStand looked at that and said hmm I better create that table too. Then later down the page when you try to create MEAS_NUMERICLIMIT it says the table already exists even though it is empty. The generate SQL button builds a bad file and then the database viewer creates a bad database. I would have to go into MySql and drop the database. I had to save the schema under a custom name, edit it read it back in, generate a new SQL file, but then it would still fail validation because the ini files don't get updated until you exit TestStand. So basically I did this process 3 times before I got it right.
It's wasn't a big deal but it's amazing how a little thing can cause a lot of work.
The second bug, I'm not certain was initially in the file or somehow got set on the fly. There was a random int statement at the very end of the SQL table description for UUT_RESULT. It was also in the schema INI file. Since the int had no name and occurred in a odd place, it created a syntax error in MySql. Same fix as above.
But like I said it's working great now. I like this approach because I serve it to the net with Apache and parse the database with simple PHP scripts.
Thanks,
Bill Peters
BAE SYSTEMS -
MySQL Stored Procedure Syntax Errors
I have an online application I would like to use transactions to either commit all db updates or none at all. The code I have created is as follows, not only am I getting a syntax error on lines 5 and 16, but quite frankly I am unsure the code will actually do what I want. Please let me know if you see the syntax errors and could explain them to me.
CREATE PROCEDURE increase_maint_priority
(maint_item INT, new_priority INT, cur_priority INT, center_id INT)
BEGIN
START TRANSACTION; -- line 5 syntax error
-- start updates
UPDATE maintitem SET priority = (priority+1)
WHERE priority > cur_priority
AND priority <= new_priority
AND centerID = center_id;
UPDATE maintitem SET priority = new_priority
WHERE id = maint_item;
COMMIT;
END; -- line 16 syntax error
Thank you in advance for helping a newb to stored procedures.
If you would like to help me figure out if this code will actually work for what I want the following describes the situation.
Main idea: business location managers submit requests for maintenance at their center. Requests can be added anywhere in the priority list (1=highest priority). They can also change the priority of a request at any time.
Previously I have been using php to control a loop of mysql update queries (yikes, I know now, 2 sql statements could do the trick) and lately we have been experiencing duplicate priorities, and other problems that seem to be most likely linked to the updating of priorities of multiple items.
Ex: moving priority item 6 to priority 1 requires 1 update query for the current 6th priority item, but a second query (or loop of several more since I was very new to sql statements at time of development 2 years ago) to update the other priorities.
Thus the desire for the transaction method.
Again, thanks in advance for any help on this issue.
P.S. - I am using MySQL workbench to write this and that's where I get the errors.Yes, of course.
DELIMITER //
CREATE PROCEDURE increase_maint_priority
(maint_item INT, new_priority INT, cur_priority INT, center_id INT)
BEGIN
START TRANSACTION;
-- start updates
UPDATE maintitem SET priority = (priority+1)
WHERE priority > cur_priority
AND priority <= new_priority
AND centerID = center_id;
UPDATE maintitem SET priority = new_priority
WHERE id = maint_item;
COMMIT;
END //
DELIMITER ;
Just so you're aware, the table name is actually in a slightly dfferent format: `db_name`.`table_name` I have just renamed it for privacy purposes. -
JDBC/MySQL syntax error on MySQL server login
I am making a simple JSP page and I'm trying to test basic functionality/connectivity with a MySQL database. Included is my index.jsp code and the errors given by Tomcat. Any insights would be very helpful, thanks.
org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 13 <%@ page import="java.sql.*"%> <% Connection con = null; Statement stmt = null; ResultSet rs = null; %> <html> <body> <% Class.forName("com.mysql.jdbc.Driver").newInstance(); con = DriverManager.getConnection("jdbc:mysql://localhost:3306/database", "correctUserName", "correctPassword"); //<-line 13 stmt = con.createStatement(); rs = stmt.executeQuery("SELECT * FROM table"); while(rs.next()){ out.println(rs.getString("name")+"<br>"); } rs.close(); %> </body </html> Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:398) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) root cause javax.servlet.ServletException: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '????????????????' at line 1 org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862) org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791) org.apache.jsp.index_jsp._jspService(index_jsp.java:86) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:717) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) javax.servlet.http.HttpServlet.service(HttpServlet.java:717)chrislard wrote:
That is a good idea for actual implementation, but this is just a test. There isn't any reason that this should not work because it hasn't been broken up into multiple files etc.Evidence would indicate that it is not in fact working though. And the error indicates a syntax error. Because it is JSP there is no assured way to localize the problem, not to mention that since it is running is a container there is no assurance that the posted code is even what is running.
My suggestion on the other hand completely eliminates all of those possibilities.
But if it helps you the posted SQL does not have any syntax errors. So if you can solve the problem that you have knowing just that then go for it. Myself I would at least create a test jig. -
Syntax Error with EXPORT statement in ECC 6
Hi All,
I have one issue with EXPORT statement syntax.
I have declared data like below:
DATA: BEGIN OF mem_id,
mandt LIKE sy-mandt,
uname LIKE sy-uname,
modno LIKE sy-modno,
END OF mem_id.
export the memory id
EXPORT E_VBKOK XANZPK TEXTTAB XBOLNR TO MEMORY ID MEM_ID.
When I am checking the syntax error i am getting like "MEM_ID" must be a character-type field (data type C, N, D or T). by "INTERFACE". by "INTERFACE". "INTERFACE". by "INTERFACE". by "INTERFACE".
I know this statement would be like IMPORT ITAB TO JTAB FROM MEMORY ID 'table'. So I have written like below
EXPORT E_VBKOK XANZPK TEXTTAB XBOLNR TO MEMORY ID 'MEM_ID'. But still it is throwing an error.
Can you please let me know how can I resolve this?
Regards,
Jyothi CH.Hi Jyothi,
data: l_var type string.
concatenate '6' '8' into l_var separated by space.
export l_var to memory id 'BB'.
Here we have to declare the type(structure) for l_var not for BB
and in another program
data:l_var type string.
import l_var from memory id 'BB'.
write : l_var. -
Where is the syntax error in my Insert statement?
It says that there is a syntax error in my insert statement, pointing to the .ExecuteNonQuery() at the end:
'Defining the activity ID from the datatable
Dim ActivityID As Integer = DataTableActivities.Rows(0).Item(0)
'Defining the calories from the datatable
Dim calories As Decimal = (DataTableActivities.Rows(0).Item(3)) * (DurationNum.Value / 60)
'Insert statement to add new training events
Dim SqlQueryActivityInsert As String = "INSERT INTO tblTraining (RunnerID, ActivityID, Full_Name, Time, Calories_Burnt, Date) VALUES (@RunnerID, @ActivityID, @Full_Name, @Time, @Calories, @Date)"
Dim SqlCommandActivity As New OleDbCommand
With SqlCommandActivity
.CommandText = SqlQueryActivityInsert
.Parameters.AddWithValue("@RunnerID", LoginForm.UserIDlbl.Text)
.Parameters.AddWithValue("@ActivityID", ActivityID)
.Parameters.AddWithValue("@Full_Name", LoginForm.Full_Namelbl.Text)
.Parameters.AddWithValue("@Time", DurationNum.Value)
.Parameters.AddWithValue("@Calories", calories)
.Parameters.AddWithValue("@Date", WeekPicker.Value)
.Connection = conn
.ExecuteNonQuery()Viorel is right. The 'Date' field is probably throwing it off. Date is a reserved word.
https://www.drupal.org/node/141051
Putting square brackets [] around the field name should get it working for you.
Knowledge is the only thing that I can give you, and still retain, and we are both better off for it. -
Hi,
I am getting following error message ,
[Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.
When run this code.
<%@ page import= "java.sql.*"%>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb");
Statement st = con.createStatement();
st.executeUpdate("update tscipshift set 11-Aug-08='M' where TechN='Elamparuthi'");
%>
tscipshift=table ,column=11-Aug-08 are all exist.
I dont know why I am getting error mesage.
Any idea why?Shahbaz2008 wrote:
you haven't set your user name and password hereI don't believe that's necessary with Access. Then again, it's not an enterprise database.
Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb");
change it to this
Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb","+username+","+password+");
here pass your username and password...
In Oracle default user name and password is
username = scott
password = tigerSo who uses that? Only an eejit would leave that account open.
So the statement would be
Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb","scott","tiger");
or In Mirosoft Access there is no user name and password so the statement will be Like I said - unnecessary, and not the reason the OP is having problems.
Connection con = DriverManager.getConnection("jdbc:odbc:bspipdb","","");>
Besides this change your table name 11-Aug-08 to anything that is not start with number or any special symbols.
for example aug112008 is good or aug is too good.No, it's still not good if you understand ANYTHING about relational databases and normalization.
I think it would work.I think you're just as stup!d as the OP.
% -
Syntax Error in Update Statement
Would a smart and kind CF pro mind putting a fresh pair of
eyes on this code and tell me where the syntax error is? All the
fields in the statement are numeric except the last one (comments).
I have enclosed them in val() to ensure they are numeric when
inserted into the DB. The fields they're being inserted into are
numeric. I need to be numeric because I will be doing calculations
on them. Also, I have triple-checked to ensure the datasource,
table, and field names all match.
Thanks,
GwenHTry using <cfqueryparam>
<cfquery datasource="reviews">
UPDATE evals
SET focus = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.focus#">
, strengths = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.strengths#">
, tailored = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.tailored#">
, badinfo = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.badinfo#">
, format = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.format#">
, visual = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.visual#">
, grammar = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.grammar#">
, pronouns = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.pronouns#">
, written = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.written#">
, achieve = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.achieve#">
, sell = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.sell#">
, negative = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.negative#">
, top = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.top#">
, general = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.general#">
, intro = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.intro#">
, orientation = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.orientation#">
, paragraphs = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.paragraphs#">
, two = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.two#">
, length = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.length#">
, none = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.none#">
, comments = <cfqueryparam cfsqltype="cf_sql_clob"
value="#form.comments#">
WHERE resumeID = <cfqueryparam cfsqltype="cf_sql_numeric"
value="#form.resumeID#">
</cfquery>
Ken Ford
Adobe Community Expert Dreamweaver/ColdFusion
Adobe Certified Expert - Dreamweaver CS3
Adobe Certified Expert - ColdFusion 8
Fordwebs, LLC
http://www.fordwebs.com
"GwenH" <[email protected]> wrote in message
news:[email protected]...
> Would a smart and kind CF pro mind putting a fresh pair
of eyes on this
> code
> and tell me where the syntax error is? All the fields in
the statement are
> numeric except the last one (comments). I have enclosed
them in val() to
> ensure
> they are numeric when inserted into the DB. The fields
they're being
> inserted
> into are numeric. I need to be numeric because I will be
doing
> calculations on
> them. Also, I have triple-checked to ensure the
datasource, table, and
> field
> names all match.
>
> Thanks,
> GwenH
>
> <cfquery datasource="reviews">
> UPDATE evals
> SET
> focus = val(#form.focus#)
> , strengths = val(#form.strengths#)
> , tailored = val(#form.tailored#)
> , badinfo = val(#form.badinfo#)
> , format = val(#form.format#)
> , visual = val(#form.visual#)
> , grammar = val(#form.grammar#)
> , pronouns = val(#form.pronouns#)
> , written = val(#form.written#)
> , achieve = val(#form.achieve#)
> , sell = val(#form.sell#)
> , negative = val(#form.negative#)
> , top = val(#form.top#)
> , general = val(#form.general#)
> , intro = val(#form.intro#)
> , orientation = val(#form.orientation#)
> , paragraphs = val(#form.paragraphs#)
> , two = val(#form.two#)
> , length = val(#form.length#)
> , none = val(#form.none#)
> , comments = '#form.comments#'
> WHERE resumeID = #form.resumeID#
> </cfquery>
> -
Use Of "#EC CI_EXECSQL in ABAP with EXEC SQL. Statement giving Syntax Error
Dear Gurus,
I have encountered an issue while trying to remove warning for using Native SQL statement using pseudo comment "#EC CI_EXECSQL
The thing is like this -- i have used follwing native sql command in abap.
EXEC SQL.
CONNECT TO 'SURROUND_DB'
ENDEXEC.
Now when i am checking this code in code inspector it is showing a warning with information below
CA CL_CI_TEST_CRITICAL_STATEMENTS0006
Code Inspector
Critical Statements
Use of Native SQL
Authorization checks cannot be appropriately run using EXEC SQL and should be carried out at program level.
The message can be hidden using the pseudo-comment "#EC CI_EXECSQL
Use of exceptin handling section for that warning showing me to use :
The message can be hidden using pseudo
comment "#EC CI_EXECSQL
Now when I am using "#EC CI_EXECSQL in the abap like below :
EXEC SQL. "#EC CI_EXECSQL
CONNECT TO 'SURROUND_DB'
ENDEXEC.
It is giving syntax error
The text literal ""#EC CI_EXECSQL " is longer than 255
characters.Check whether it ends correctly.
Please provide the guideline to resolve this issue.
Thanks & regards
Saifur Rahaman.Hi Saifur,
You can remove the warning using the following syntax:
EXEC "#EC CI_EXECSQL
SQL.
CONNECT TO 'SURROUND_DB'
ENDEXEC.
At least, it worked fine for me when using OPEN CURSOR, SELECT, FETCH and so on statements.
The way to use the pseudo comment is not very intuitive, but at least for my examples worked fine.
I hope this may help you.
Best regards,
Edgardo G. König -
JDBC: Syntax error in UPDATE statement???
Hi,
I have been trying to solve this seemingly simple problem for the past 4 hours, and I had no success. I am working on a jdbc:odbc connection which utilizes MS Access. I have been constantly getting "Syntax error in UPDATE statement", and this is the statement
(name of the table is CDs, columns are number, artist, album, label and date - all strings):
query = "UPDATE CDs SET artist = '" + fields.artist.getText() +"', album = '" +
fields.album.getText() + "', label = '" +
fields.label.getText() + "', date = '" +
fields.date.getText() + "' WHERE number = '" + fields.number.getText() + "'";
Can anybody recognize an error? Thank you,
mirkokrugA couple of possibilities.
If the column NUMBER is numeric then it wouldn't need quotes around the data value. Also if the column DATE is a date or date/time type then the format from the textbox may not be correct.
Col -
Syntax error in INSERT STATEMENT
A problem on the date part of the query but why I don´t
know, Thanks for any pointers,
TIA
<cfquery name="update1" datasource="trevor_SecurityDB">
INSERT INTO imagesproducts
(title, info, date)
VALUES ( '#form.title#', '#form.info#', '#DateFormat(Now())#'
</cfquery>
Error Occurred While Processing Request
Error Executing Database Query.
[Macromedia][SequeLink JDBC Driver][ODBC
Socket][Microsoft][ODBC Microsoft Access Driver] Syntax error in
INSERT INTO statement.
The error occurred in uploadmember.cfm: line 28
26 : INSERT INTO imagesproducts
27 : (title, info, date)
28 : VALUES ( '#form.title#', '#form.info#',
'#DateFormat(Now())#' )
29 : </cfquery>
30 :
SQL INSERT INTO imagesproducts (title, info, date) VALUES (
'News test', 'Testing news info', '12-Jul-07' )
DATASOURCE trevor_SecurityDB
VENDORERRORCODE -3502
SQLSTATE 42000Perhaps it is a reserved word issue with the date column,
since
date is an ODBC Reserved Keyword. You might try enclosing it
within brackets [ ].
<cfquery name="update1" datasource="trevor_SecurityDB">
INSERT INTO imagesproducts
(title, info, [date])
VALUES ( '#form.title#', '#form.info#', '#DateFormat(Now())#'
</cfquery>
Or, if that doesn't help, you might try using a cfqueryparam
tag for the '#DateFormat(Now())#' value using a cfsqltype =
"CF_SQL_TIMESTAMP" (assuming a date/time datatype on the column).
Also, you might look into using one of the CreateODBCDateTime() or
CreateODBCDate() functions.
Phil -
Help! Syntax Error in SQL statement
Hello. I'm getting an error message and I'm just not seeing
where I went wrong. The SQL statement is:
updateSQL = "UPDATE TrainingHistory SET Status='" &
fFormat(Request.Form(cStatus)) & "', StatusComments='" &
fFormat(Request.Form(cStatusComments)) & " WHERE Training_ID="
& fFormat(Request.Form(cTrainingID))
The error message is:
[Microsoft][ODBC Microsoft Access Driver] Syntax error in
string in query expression '' WHERE Training_ID=9054'.
I've been looking at it for a while. Not sure where I went
wrong. Here is a more complete version of the code:
<%
Function fFormat(vText)
fFormat = Replace(vText, "'", "''")
End Function
Sub sRunSQL(vSQL)
set cExecute = Server.CreateObject("ADODB.Command")
With cExecute
.ActiveConnection = MM_coldsuncrea_lms_STRING
.CommandText = vSQL
.CommandType = 1
.CommandTimeout = 0
.Prepared = true
.Execute()
End With
End Sub
If Request.Form("action")="update" Then
'Set variables for update
Dim updateSQL, i
Dim cTrainingID, cStatus, cStatusComments
'Loop through records on screen and update
For i = 1 To fFormat(Request.Form("counter"))
'Create the proper field names to reference on the form
cTrainingID = "Training_ID" & CStr(i)
cStatus = "Status" & CStr(i)
cStatusComments = "StatusComments" & CStr(i)
'Create the update sql statement
updateSQL = "UPDATE TrainingHistory SET Status='" &
fFormat(Request.Form(cStatus)) & "', StatusComments='" &
fFormat(Request.Form(cStatusComments)) & " WHERE Training_ID="
& fFormat(Request.Form(cTrainingID))
'Run the sql statement
Call sRunSQL(updateSQL)
Next
'Refresh page
Response.Redirect("ClassUpdateRoster.asp?Training_ID=") &
(rsClassDetails.Fields.Item("event_ID").Value)
End If
%>You need another single quote after the double quote before
the WHERE clause. You are not closing the single quote you used to
delimit the value for StatusComments. -
Syntax error in modify statement
Hi Friends,
There is an Internal table IT_STATUS which is the Parameter in BADI Method IF_EX_WORKORDER_UPDATE~BEFORE_UPDATE.
Below is the code i have written
Data: wa_status type cobai_s_status,
stat TYPE TABLE OF jstat,
wa_stat type jstat.
CALL FUNCTION 'STATUS_READ'
EXPORTING
client = sy-mandt
objnr = gv_objnr
* ONLY_ACTIVE = ' '
* IMPORTING
* OBTYP =
* STSMA =
* STONR =
TABLES
status = stat
EXCEPTIONS
object_not_found = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
loop at it_status into wa_status.
read table stat into wa_stat with key STAT = wa_status-stat.
if sy-subrc = 0.
wa_status-stat = wa_stat-stat.
wa_status-INACT = wa_stat-INACT.
modify it_status from wa_status transporting stat inact.
endif.
endloop.
ENDIF.
At Modify statement it is giving a syntax error 'The <b>field "IT_STATUS" cannot be changed.-</b>'. what could be the reason?
Please provide me the solution.
Thanks & Regards,
SatishHi Rob,
This is the whole code which i had written in method
METHOD if_ex_workorder_update~before_update.
DATA: gv_aufnr TYPE afih-aufnr,
gv_objnr TYPE jest-objnr,
stat TYPE TABLE OF jstat,
wa_stat TYPE jstat,
wa_header TYPE cobai_s_header,
wa_status TYPE cobai_s_status,
it_status_new TYPE cobai_t_status.
DATA: status_index TYPE sy-tabix.
BREAK-POINT.
LOOP AT it_header INTO wa_header.
SELECT SINGLE aufnr FROM afih INTO gv_aufnr WHERE warpl = wa_header-warpl AND abnum = 1.
IF sy-subrc = 0.
CONCATENATE 'OR' gv_aufnr INTO gv_objnr.
CALL FUNCTION 'STATUS_READ'
EXPORTING
client = sy-mandt
objnr = gv_objnr
* ONLY_ACTIVE = ' '
* IMPORTING
* OBTYP =
* STSMA =
* STONR =
TABLES
status = stat
EXCEPTIONS
object_not_found = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
LOOP AT it_status INTO wa_status.
status_index = sy-tabix.
READ TABLE stat INTO wa_stat WITH KEY stat = wa_status-stat.
IF sy-subrc = 0.
wa_status-stat = wa_stat-stat.
wa_status-inact = wa_stat-inact.
MODIFY it_status INDEX status_index FROM wa_status TRANSPORTING stat inact.
ENDIF.
ENDLOOP.
ENDIF.
ENDIF.
ENDLOOP.
ENDMETHOD.
Hope it will get resolved
Regards,
Satish -
Syntax error in For Loop statement
Hello
Normally my FOR staements have not been a problem as only access one table. I the example below I am accessing three table and therefore I get a Syntax error.
I only wish to select the "Product" recored but need the other table to enable the select the right results.
FOR product_rec IN (SELECT * from PRODUCT, PRODUCT_GROUP,PROD_PROD_GROUP
where PRODUCT_GROUP.PRODUCT_GROUP_KEY = PROD_PROD_GROUP.PRODUCT_GROUP_KEY
and PROD_PROD_GROUP.PRODUCT_KEY = PRODUCT.PRODUCT_KEY
and product.supplier_key = company_no
and PROD_PROD_GROUP.MULTI_WEB_DIS = 1
order by PROD_PROD_GROUP.MULTI_WEB_SEQ)
Can anyone let the correct syntx for this statement.
Thanks
PeteLike Dom said:
FOR product_rec IN (SELECT PRODUCT.* from PRODUCT, PRODUCT_GROUP,PROD_PROD_GROUP
where PRODUCT_GROUP.PRODUCT_GROUP_KEY = PROD_PROD_GROUP.PRODUCT_GROUP_KEY
and PROD_PROD_GROUP.PRODUCT_KEY = PRODUCT.PRODUCT_KEY
and product.supplier_key = company_no
and PROD_PROD_GROUP.MULTI_WEB_DIS = 1
order by PROD_PROD_GROUP.MULTI_WEB_SEQ) Or what he meant by "nice to have", use aliases:
select p.*
from
product p,
product_group pg,
prod_prod_group ppg
where
pg.product_group_key = ppg.product_group_key
and ppg.product_key = p.product_key
and p.supplier_key = company_no
and ppg.multi_web_dis = 1
order by
ppg.multi_web_seqAlso, note that company_no is not aliased in the above query. If this is a column, it should be aliased as well (either with the full table name or the alias if you switch to using them). If it is a PL/SQL variable, it is fine as is.
Edited by: cmartin2 on Feb 2, 2011 1:56 PM
Maybe you are looking for
-
Iphone 5 stuck on loading screen after update. Need help!
So I lacked space on my phone to update to iOS8 via WiFi so I attempted to via desktop. Seemed to be working well until I got to a loading screen on iTunes saying "Restoring iPhone Software". Phone is also on loading screen and has reached roughly 1/
-
Re: Regarding Purchase Requsition Report
HI, I am making purchase Requisition Report and i want to display<b> that these are the PURCHASE REQUISITIONS and these are approved by these persons at these dates.</b> if anybody provide me help he or she will be definately rewarded. Message was ed
-
Help menu "Search" box missing in Dreamweaver 5.5 for Mac
I've just upgraded from CS3 to CS5.5 on Mac OS 10.6.8 and am still finding my way around the new menus. The easiest way to find a menu command is usually to use the spotlight type "search" box that appears at the top of the help menu, which flags up
-
Question about changing file attributes
Hello, My application brings a support file and it copies it to another directory. Then I should make that file hidden but I cannot find a function how to do it. I guess LV doesn't have that possibility in its functions. Any pointer to a Windows comp
-
Reroute usb power to double output?
I'm curious if it is possible to reroute the power from 1 USB 2.0 port to the other one...? I have a WD ext HD and the power from one is not enough to get the little thing going. This is very frustrating...! There is the option of adding a Y cable sp