execute()

阅读(4179) 标签: 数据库, 执行sql语句,

本章节介绍execute()函数的用法。

db.execute()

描述:

在指定的数据库连接中执行sql语句。

语法:

db.execute(sql {,args,…} )

db中执行sql语句。args,sql的参数;args也可以是由sql的参数值组成的序列。

db.execute(A/cs, sql {,args,…} )

db中针对A/cs依次执行sql语句。args,sql的参数。这种方式可以避免多次访问数据库。此时args不支持序列参数

备注:

在指定的数据库连接中执行sql语句,一般用于执行改变数据库记录的sql,如更新、插入等等。

参数:

db

数据源连接。

sql

需要查询的sql语句,如 select * from table

args

sql中如果用到参数,就必须转入参数值,这里可以是常数,也可以是表达式计算出来的变量。注意,各个参数之间用逗号分隔。

A

序列,对着A循环执行sql,一般是利用A计算出不同的args传给sql去执行。

cs

游标。

选项:

@k

完成后不提交事务,缺省将提交。

@s

事先不做事务准备。

示例:

 

A

 

1

=demo.execute("insert into DEPARTMENT(DEPT, MANAGER) values(?,?)","TecSupport",9)

向表中插入一条数据。

2

=demo.execute("delete from DEPARTMENT where DEPT='TecSupport'")

删除DEPT ''TecSupport''的记录。

3

=demo.execute("update DEPARTMENT set MANAGER = ? where DEPT='Sales'","7")

修改DEPT'Sales'MANAGER7

4

=[["'TecSupport ",5],[" AppSupport",9]].new(~(1):Dept,~(2): Manager)

5

=demo.execute(A4,"insert into DEPARTMENT (DEPT, MANAGER) values (?,?)", #1,#2)

#1#2代表A4中的第一列和第二列。

6

=demo.query("select * from DEPARTMENT")

7

=file("D://data_dept.txt").cursor@t()

data_dept.txt文件内容如下:

8

=demo.execute(A7,"insert into DEPARTMENT (DEPT, MANAGER) values (?,?)", #1,#2)

A7为游标。

9

=demo.execute("insert into DEPARTMENT(DEPT, MANAGER) values(?)",["TecSupport",9])

args为参数值组成的序列,执行前自动转换为=demo.execute("insert into DEPARTMENT(DEPT, MANAGER) values(?,?)","TecSupport",9)。结果同A1

相关概念:

db.query()

db.proc()