社区
PowerBuilder
帖子详情
急: 如何用execute执行多条SQL语句?
anray
2002-06-20 12:12:28
急: 如何用execute执行多条SQL语句?
...全文
1764
22
打赏
收藏
急: 如何用execute执行多条SQL语句?
急: 如何用execute执行多条SQL语句?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
22 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sun9761
2002-07-14
打赏
举报
回复
5201314
PBsystem
2002-07-12
打赏
举报
回复
多条语名写入一个.sql文件
用osql 执行!
mynah8
2002-07-11
打赏
举报
回复
继续讨论...
WorldMobile
2002-06-20
打赏
举报
回复
把你的SQL语句放在存储过程中吧,这样速度还能快些
anray
2002-06-20
打赏
举报
回复
To 回复人: delphi_compiler(蘸水鱼):
ORACLE 中StoreProceduce 不支持"Create..."语句的,我现在就想用几条SQL同时执行去建多个表啊.
anray
2002-06-20
打赏
举报
回复
execute IMMEDIATE
我知道这样执行啊,但是这样只能执行一条SQL语句,要想执行多条就不知道怎样了.
不会是:execute IMMEDIATE SQL1;SQL2;SQL3;.....;......吧?这样我试过了,不行啊!!!!
delphi_compiler
2002-06-20
打赏
举报
回复
用存储过程行否?试试吧.
xingxing
2002-06-20
打赏
举报
回复
execute IMMEDIATE
gztitan
2002-06-20
打赏
举报
回复
其实是在程序中IMPORT 一个.SQL文件通过一次建立多个表,可以动态修改表结构!
mynah8
2002-06-20
打赏
举报
回复
按照jimly(一脚)的方法按理论应该可行。
以下是具体的程序:
(注意以下程序未经在orcal测试,但在mysql测试可行)
string ls_compart = '~r~n' + '/' + '~r~n'
//以上是orcal的分隔符
//如果是MSSQL及sybase将 '/' 改成 'go'
//如果ASA改成分号
//以上分隔符'~r~n'如果有问题,改成char(13)+char(10)试试
//即:string ls_compart = char(13)+char(10) + '/' + char(13)+char(10)
string ls_sql[], ls_sqlSyntax
ls_sql[1] = 'drop table Tab2 cascade constraints'
ls_sql[2] = 'drop table Tab1 cascade constraints'
ls_sql[3] = 'create table Tab1' + &
'(id VARCHAR2(8) not null, ' + &
' constraint PK_TAB1 primary key (id))'
ls_sql[4] = 'create table Tab2' + &
'(' + &
'id int not null,' + &
'name VARCHAR2(8) null,' + &
'constraint PK_TAB2 primary key (id)' + &
')'
ls_sql[5] = 'create index idx_tab2_name on Tab_2 (name asc)'
ls_sqlSyntax = ls_sql[1] + ls_compart
ls_sqlSyntax += ls_sql[2] + ls_compart
ls_sqlSyntax += ls_sql[3] + ls_compart
ls_sqlSyntax += ls_sql[4] + ls_compart
ls_sqlSyntax += ls_sql[5] + ls_compart
SQLCA.AutoCommit = TRUE //这句也许可以不要
EXECUTE IMMEDIATE :ls_sqlSyntax USING SQLCA ;
SQLCA.AutoCommit = FALSE
jimly
2002-06-20
打赏
举报
回复
不知你要在何处?存储过程中?程序中?一次创建多个表?
您是要必须在存储过程中执行一次创建多个表?
hammlet
2002-06-20
打赏
举报
回复
直接用;分开写多条就可以了
gztitan
2002-06-20
打赏
举报
回复
问题就是在如何分隔多个SQL语句,如何拼成一条SQL! 因为在ORACLE 中存储过程是不支持"CREATE, DROP"等语句. 如何一次CREATE多个TABLE?
jimly
2002-06-20
打赏
举报
回复
还有你那create好象少分号
jimly
2002-06-20
打赏
举报
回复
oracle学过几天,不熟呀。再有oracle 我也不知道如何一次导出所有语法。
不过拆分应该是没错的,不知分号如何。
再说你的文本写在代码中完全可以先执行drop再create
gztitan
2002-06-20
打赏
举报
回复
1
但是在ORACLE中出现ERROR! "PLS-00103 ENCOUNTERED THE SYMBOL "DROP" WHEN EXPECTING ONE OF THE FOLLOWING"
例子:
ls_sql = "Begin drop table ecs_"+as_campaignID+"_quest end;"
ls_sql = ls_sql+ "begin CREATE TABLE ecs_"+as_campaignID+"_quest ( "&
+"id_question varCHAR2(6) NOT NULL, "&
+"type_question CHAR (1) NOT NULL, "&
+"con_question varchar2(2000) NOT NULL, "&
+"se_quest CHAR(1) , "&
+"CONSTRAINT pk_ecs_"+as_campaignID+"_quest PRIMARY KEY(id_question) USING "&
+"INDEX "&
+"TABLESPACE ecs_ind) "&
+"TABLESPACE ecs end;"
zhyx21century
2002-06-20
打赏
举报
回复
gz
hammlet
2002-06-20
打赏
举报
回复
ls_SQL = "alter table carrying add is_ship char(1); " + &
ls_SQL = ls_SQL +
"INSERT INTO trade( code,mode) VALUES('4600','1');"
EXECUTE IMMEDIATE :ls_SQL USING SQLCA ;
leio
2002-06-20
打赏
举报
回复
用PL/SQL块的方式运行,在你的多条SQL语句前后加上BEGIN和END组成字符串后EXECUTE IMMEDIATE。
gztitan
2002-06-20
打赏
举报
回复
一脚先生:
在ORACLE 中如何分隔? 如何拼SQL?我用以下的例子但不行
ls_sql = "drop table ecs_"+as_campaignID+"_quest"
ls_sql = ls_sql+ ";"
ls_sql = ls_sql+ "CREATE TABLE ecs_"+as_campaignID+"_quest ( "&
+"id_question varCHAR2(6) NOT NULL, "&
+"type_question CHAR (1) NOT NULL, "&
+"con_question varchar2(2000) NOT NULL, "&
+"se_quest CHAR(1) , "&
+"CONSTRAINT pk_ecs_"+as_campaignID+"_quest PRIMARY KEY(id_question) USING "&
+"INDEX "&
+"TABLESPACE ecs_ind) "&
+"TABLESPACE ecs"
加载更多回复(2)
mysql
执行
多条
语句
最近因为删除信息的自增序列断裂问题,不得不重新排序,也就是需要在java代码中
执行
多条
sql语句
。 问题引出 最开始,是这样做的 在mysql中
执行
以上代码,发现序列重新排好了,详见:https://blog.csdn.net/xd15010130025/article/details/89319380 但是在java中运行却遇到了一下问题,将
sql语句
拼接在一起 报错为 可是语句明明和my...
Oracle使用
EXECUTE
IMMEDIATE命令动态
执行
SQL语句
Oracle使用
EXECUTE
IMMEDIATE命令动态
执行
SQL语句
动态
执行
SQL语句
指先把一个SQL命令保存到一个字符串中,然后通过
execute
immediate命令动态
执行
字符串中的
SQL语句
,以实现
SQL语句
的动态生成。 一、动态
SQL语句
的使用方式 DECLARE 字符串变量名 varchar2(n); --定义一个字符串类型的变量,用以保存
SQL语句
BE...
JDBC
执行
sql语句
的方法,
execute
、
execute
Update、
execute
Query
执行
sql是JDBC最重要的一个步骤,可以说是JDBC的灵魂,
执行
sql 一般有三个方法:
execute
、
execute
Update、
execute
Query 1、
execute
Update
执行
INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句,该方法返回 ...
EXECUTE
IMMEDIATE及Using (精辟啊) -- 可
执行
多条
sql语句
当我们碰到有一类存储名称和过程的参数上都相似时,可以使用
execute
immediate来动态
执行
这些存储过程,在这次的项目中我有一类用“P_InsertInto_”开头的存储过程,后面是表名如:P_InsertInto_AC01、P_InsertInto_AC02等等,用来给AC01、AC02........这些表插入数据的,我们就只能用
execute
immediate动态
执行
这些过程,像这...
pdo mysql
执行
多条
sql_PDO中
执行
SQL语句
的三种方法
PDO中
执行
SQL语句
的三种方法在PDO中,我们可以使用三种方式来
执行
SQL语句
,分别是 exec()方法,query方法,以及预处理语句prepare()和
execute
()方法~在上一篇文章《使用PDO构造函数连接数据库及DSN详解》中,我们介绍了如何使用构造函数连接数据库和DSN的详解,那么我们这篇文章跟大家介绍在PDO中
执行
SQL语句
的三种方式,下面我们将一一介绍!第一种方法:exec()...
PowerBuilder
1,111
社区成员
66,454
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章