色尼姑电影:简单的sql语句

来源:百度文库 编辑:高考问答 时间:2024/04/29 04:39:06
想在一个conn.execute("内")执行两条命令:例如下面的形式

conn.execute("delete from gongqiu where id=62;insert into Admin(admin,password) values ('asdasd','asdasd')")
这样写好象不对,请问该如何写
开发环境:asp+access
常规是:
conn.execute("delete from gongqiu where id=62")
conn.execute("insert into Admin(admin,password) values ('asdasd','asdsd')")
分开来写这行来执行这两条语句,这个是正确的

现我想把他们写在一行,我中间用;号,好象错误,请问有没办法写一行来执行?

这样写法是数据库依赖的,比如SQLServer和Sybase就允许这样写,而你如果使用Access就不可以

或者,你可以尝试下面的办法通过脚本语言本身来平衡这种不依赖
try{
conn.setAutoCommit(false);
Statementstmt=conn.createStatement();
sql="insertinto...";//要执行的SQL
stmt.add(sql);
sql="select*from...";//要执行的SQL
stmt.add(sql);
stmt.executeBatch();
conn.commit();
conn.setAutoCommit(true);
}catch(SQLExceptione){
e.printSatcktrace();
conn.rollBack();
}

如果是 ACCESS 数据库的话,不支持

要分开写

conn.execute("delete from gongqiu where id=62")
conn.execute("insert into Admin(admin,[password]) values ('asdasd','asdasd')")

如果是SQL server数据库,直接把分号变为空格就可以了。
像下面:
conn.execute("delete from gongqiu where id=62 insert into Admin(admin,password) values ('asdasd','asdasd')")

分两句写吧,不用那个懒吧,又不是存储过程