首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >db2 sql脚本和换行符

db2 sql脚本和换行符
EN

Stack Overflow用户
提问于 2010-03-07 15:22:42
回答 2查看 4.7K关注 0票数 2

刚刚开始使用db2。关于从文件中提供SQL命令的快速问题。

如果我运行:

代码语言:javascript
复制
db2 -f mySQLcommands

我的所有命令都是一行sql命令,它们执行起来没有任何问题。如果我把换行符放在我的sql语句中间,那么db2会返回"expected某某字符之后“,下面是一个包含换行符的例子:

代码语言:javascript
复制
CREATE TABLE Example (
              id int)

如果没有换行符,它将运行。我在nano中测试得很快,所以这意味着它可能使用了\n字符。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-07 17:21:07

-t命令行开关用于启用默认情况下以分号结尾的多行语句;

例如:

代码语言:javascript
复制
db2 -t -f mySQLcommands

CREATE TABLE Example (
              id int);
票数 4
EN

Stack Overflow用户

发布于 2010-03-07 15:39:46

不是对您的问题的直接回答,但是另一种选择是使用use something like PyDB2并让Python管理与DB2的接口。

类似这样的代码应该可以:

代码语言:javascript
复制
import pydb2

mysqlstmt = open('create_table_example.sql', 'r').read() # multi-line SQL is ok

conn = pydb2.connect(database="db", host="hst", user="usr", password="pswd")
c = conn.cursor()

c.execute(mysqlstmt)

conn.commit()
c.close()
conn.close()

mysqlstmt.close()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2395503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档