能否用代码实现SQLSERVER7建表、修改表结构,怎样在程序中执行*.SQL脚本文件。望高手告之,谢谢!

lssoft 2003-04-25 11:28:14
能否用代码实现SQLSERVER7建表、修改表结构,怎样在程序中执行*.SQL脚本文件。望高手告之,谢谢!
...全文
56 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lssoft 2003-05-17
  • 打赏
  • 举报
回复
cooltnt(甜甜粥) 能说详细一点吗?

还有没有办法?

cooltnt 2003-04-27
  • 打赏
  • 举报
回复
run(isql.exe -E -d master -i *.sql)
isql.exe 是sqlserver自带的工具,查找一下吧。
lssoft 2003-04-27
  • 打赏
  • 举报
回复
谢谢
怎样在程序中执行*.SQL脚本文件。望高手告之,谢谢!
one_bird 2003-04-27
  • 打赏
  • 举报
回复
呵呵,少写了一句判断,再贴一遍

lsinteger li_FileNum
string ls_sql,ls_tmp

li_FileNum = FileOpen("C:\createtable", &
lineMode!, Write!, LockWrite!, Replace!)
fileread(li_filenum,ls_sql)
do while ls_sql <> ''
if right(ls_sql,1) <> ';' then
ls_tmp = ls_tmp + ls_sql
else
ls_tmp = ls_sql
end if
execute immediate :ls_tmp;
if sqlca.sqlcode <> 0 then messagebox("提示","创建表时出现错误!")
return
fileread(li_filenum,ls_sql)

loop

commit;

one_bird 2003-04-27
  • 打赏
  • 举报
回复
integer li_FileNum
string ls_sql

li_FileNum = FileOpen("C:\createtable", &
lineMode!, Write!, LockWrite!, Replace!)
fileread(li_filenum,ls_sql)
do while ls_sql <> ''
execute immediate :ls_sql;
if sqlca.sqlcode <> 0 then messagebox("提示","创建表时出现错误!")
return
fileread(li_filenum,ls_sql)

loop

commit;


tchatcha 2003-04-26
  • 打赏
  • 举报
回复
动态SQL语句的格式1

string Mysql

Mysql = "CREATE TABLE Employee "&
+"(emp_id integer not null,"&
+"dept_id integer not null, "&
+"emp_fname char(10) not null, "&
+"emp_lname char(20) not null)"

EXECUTE IMMEDIATE :Mysql ;
shulin520 2003-04-26
  • 打赏
  • 举报
回复
用create来建立表(create table),

lssoft 2003-04-26
  • 打赏
  • 举报
回复
up

1,109

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧