为什么这个SQL语句没有执行?
我有一个没有where子句的SQL语句,因为我希望它影响所有行。我有一个名为url的列。现在我想将当前列url更改为其他内容。我想将某些内容连接到当前url 我的声明是:为什么这个SQL语句没有执行?,sql,Sql,我有一个没有where子句的SQL语句,因为我希望它影响所有行。我有一个名为url的列。现在我想将当前列url更改为其他内容。我想将某些内容连接到当前url 我的声明是: UPDATE tablename SET url = 'http' || url; 这是在一个sql文件中,该文件执行并不会抛出错误,但数据库不会更改 有人能帮忙吗 RDBMS是MySQL(假设它是Oracle数据库) 我猜您没有提交更改并在其他会话中检查更改 将脚本文件更改为: UPDATE tablename SET
UPDATE tablename SET url = 'http' || url;
这是在一个sql文件中,该文件执行并不会抛出错误,但数据库不会更改
有人能帮忙吗
RDBMS是MySQL(假设它是Oracle数据库)我猜您没有提交更改并在其他会话中检查更改 将脚本文件更改为:
UPDATE tablename SET url = 'http' || url;
COMMIT;
取决于您的引擎(如果它不是Oracle,并且您有一些奇怪的MySQL逐位运算符)
或
如果commit不是隐式的,则可能需要提交事务。 试一试
确定什么是RDBMS?tsql使用(+)表示concat。。。您正在使用oracle。。。或者其他sql语言?在tsql中,| |是一个位运算符。另外,如何运行该文件?当然,该代码不会适用于所有SQL数据库。例如,在SQL Server中,如果使用+进行浓缩,则会失败。@user953278:谢谢,但请使用什么RDBMS?
UPDATE tablename SET url = CONCAT('http', url);
UPDATE tablename SET url = 'http' + url;
COMMIT;