我正在尝试做一个更改表来在表上添加一个新列,然后我想对表中的现有行进行一些更新以向最近添加的列添加一个值,最后执行一个 select * 以检查一切是否正常,然后回滚整个事情。
就像是
declare @transactionNameA varchar(20);
declare @transactionNameB varchar(20);
select @transactionNameA = 'TransactionA';
select @transactionNameB = 'TransactionB';
begin transaction @transactionNameA
alter table A add Column int;
begin transaction @transactionNameB
update A set Column = 1 where ID=1;
select * from A;
rollback transaction @transactionNameB;
rollback transaction @transactionNameA;
Run Code Online (Sandbox Code Playgroud)
当我编写该代码时,我收到一条错误消息,指出该列不存在
我究竟做错了什么?感谢您的时间和帮助。
我试图在 oracle 中获取表的描述,因为我需要知道它有哪些外键以及它们引用哪些表。我正在使用 desc 但我得到的只是“ORA-00900:无效的 SQL 语句” 知道为什么吗?谢谢。