sqlclause=select * frm table where ....
query.sql.add(sqlclause)
query.open
while not query.eof do
a=query.fieldbyname('filedname').asstring
或者得到记录数
query.recordcount
这些在pb中怎么写啊?不用数据窗口
10 个解决方案
#1
各位大哥帮忙啊,急用
#2
select count(*) into :变量 from table where ....
就可以了!
就可以了!
#3
游标或者datastore + 动态数据窗口。不过一般来说不要用游标,效率太低。
datastore uo_data
String ls_create, ls_err
String ls_sql
ls_sql = "select * from table where ...."
ls_create = sqlca.SyntaxFromSQL(ls_sql, "style(type=grid)", ls_err )
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
return
end if
uo_data = create datastore
uo_data.create(ls_create, ls_err)
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
destroy uo_data
return
end if
uo_data.SetTransObject(sqlca)
uo_data.Retrieve()
取数据就用uo_data.GetItemXXX(row, "column")来取
记得最后要destroy uo_data
datastore uo_data
String ls_create, ls_err
String ls_sql
ls_sql = "select * from table where ...."
ls_create = sqlca.SyntaxFromSQL(ls_sql, "style(type=grid)", ls_err )
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
return
end if
uo_data = create datastore
uo_data.create(ls_create, ls_err)
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
destroy uo_data
return
end if
uo_data.SetTransObject(sqlca)
uo_data.Retrieve()
取数据就用uo_data.GetItemXXX(row, "column")来取
记得最后要destroy uo_data
#4
楼上的没错,有数据窗口动态创建即可
#5
mark
已阅
揭贴
呵呵
已阅
揭贴
呵呵
#6
一般执行SQL语句可用这种方法
ls_sql = "update 表 set ...."
execute immediate :ls_sql;
如果SQL返回结果集,而且你想取得结果集的话,一般用 li_d_s的方法比较好
ls_sql = "update 表 set ...."
execute immediate :ls_sql;
如果SQL返回结果集,而且你想取得结果集的话,一般用 li_d_s的方法比较好
#7
像Delphi中的
#8
说的差不多了啊。
#9
跟Delphi差不多。就是多了两个点。
#10
比delphi 简单, 直接写, 结尾加个分号
最后用 sqlca.sqlcode 的值来判断语句是否执行成功!
最后用 sqlca.sqlcode 的值来判断语句是否执行成功!
#1
各位大哥帮忙啊,急用
#2
select count(*) into :变量 from table where ....
就可以了!
就可以了!
#3
游标或者datastore + 动态数据窗口。不过一般来说不要用游标,效率太低。
datastore uo_data
String ls_create, ls_err
String ls_sql
ls_sql = "select * from table where ...."
ls_create = sqlca.SyntaxFromSQL(ls_sql, "style(type=grid)", ls_err )
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
return
end if
uo_data = create datastore
uo_data.create(ls_create, ls_err)
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
destroy uo_data
return
end if
uo_data.SetTransObject(sqlca)
uo_data.Retrieve()
取数据就用uo_data.GetItemXXX(row, "column")来取
记得最后要destroy uo_data
datastore uo_data
String ls_create, ls_err
String ls_sql
ls_sql = "select * from table where ...."
ls_create = sqlca.SyntaxFromSQL(ls_sql, "style(type=grid)", ls_err )
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
return
end if
uo_data = create datastore
uo_data.create(ls_create, ls_err)
if len(ls_err) > 0 then
MessageBox("错误", "SQL语句错误!")
destroy uo_data
return
end if
uo_data.SetTransObject(sqlca)
uo_data.Retrieve()
取数据就用uo_data.GetItemXXX(row, "column")来取
记得最后要destroy uo_data
#4
楼上的没错,有数据窗口动态创建即可
#5
mark
已阅
揭贴
呵呵
已阅
揭贴
呵呵
#6
一般执行SQL语句可用这种方法
ls_sql = "update 表 set ...."
execute immediate :ls_sql;
如果SQL返回结果集,而且你想取得结果集的话,一般用 li_d_s的方法比较好
ls_sql = "update 表 set ...."
execute immediate :ls_sql;
如果SQL返回结果集,而且你想取得结果集的话,一般用 li_d_s的方法比较好
#7
像Delphi中的
#8
说的差不多了啊。
#9
跟Delphi差不多。就是多了两个点。
#10
比delphi 简单, 直接写, 结尾加个分号
最后用 sqlca.sqlcode 的值来判断语句是否执行成功!
最后用 sqlca.sqlcode 的值来判断语句是否执行成功!