Solved

Editing dataset using SQL

Posted on 2004-03-29
7
135 Views
Last Modified: 2010-04-05
I have two fields Field1 and Field2 in my table. I want to update Field1 using Field2 using the following code:

Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('Update debts Set Field1=:PPercentAZM * Field2 Where (Currency="$")and(Calcul=True)');

Query1.ParamByName('PPercentAZM').AsFloat := Table1.FieldByName('FieldName').AsFloat;
Query1.Open;
It gives me an error with message "Error creating cursor handle". I tried to do something via SQL Explorer using the following code:

Update debts Set Field1=Field2 * 4924 Where (Currency="$")and(Calcul=True)

It's not giving error, but doesn't calculate anything.
What i should do in order to change values of all fields in dataset using values of other fields? (Certainly with SQL)
0
Comment
Question by:ferhad
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 27

Expert Comment

by:kretzschmar
ID: 10702859
instead of
>Query1.Open;

use
Query1.ExecSQL;

your statement seems to be ok

meikl ;-)
0
 
LVL 27

Expert Comment

by:kretzschmar
ID: 10702862
btw. just don't forget to commit
0
 
LVL 11

Expert Comment

by:calinutz
ID: 10718292
Its not SQl .... it's just Delphi help files... you should read it. If you have an SQL (query) that does not return any cursor then of course you have to use the ExecSQL...
Just like kretzschmar already  wrote. And you solved the problem, I'm sure.(just type Query1.Active and press F1 on the Active property  and you should fine very easily the help that you need)
Cheers.
0
 
LVL 2

Author Comment

by:ferhad
ID: 10729877
Thank you  for your advance
I have found that Update function doesn't work with BCD fields. In SQLExplorer have tested
the following code:

Update test Set Field3=Field1*5

If the type of Field3 is BCD it doesn't work. If integer it works. The problem is so I can
change type of Field3 into Integer, but not the type of Field1. When type of Field1 is BCD
and the type of Field3 is Integer what should I do in order to calculate Field3 using Field1?
0
 

Accepted Solution

by:
modulo earned 0 total points
ID: 13275895
PAQed with points refunded (100)

modulo
Community Support Moderator
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Delphi Form ownership 4 127
Magic Software info 18 144
Convert MS Word document to a PDF file 9 115
Can Live bindings change TGrid Cell Colour ? 1 34
This article explains how to create forms/units independent of other forms/units object names in a delphi project. Have you ever created a form for user input in a Delphi project and then had the need to have that same form in a other Delphi proj…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question