我有一个带有 Oracle 11 的产品盒和一个名为 的架构A。出于测试目的,我需要产品数据的本地快照。数据不是很大,导出不成问题。我已经导出A到一组 SQL 文件(使用 DBeaver),每个表一个,内容如下:
INSERT INTO A.TABLE1 (F1, F2, F3) VALUES ('v11', 'v21', 'v31');
INSERT INTO A.TABLE1 (F1, F2, F3) VALUES ('v12', 'v22', 'v32');
Run Code Online (Sandbox Code Playgroud)
等等。问题是,出于开发目的,我使用名为 的模式B,因此在导入时我需要像这样的插入:
INSERT INTO B.TABLE1 (F1, F2, F3) VALUES ('v11', 'v21', 'v31');
INSERT INTO B.TABLE1 (F1, F2, F3) VALUES ('v12', 'v22', 'v32');
Run Code Online (Sandbox Code Playgroud)
我知道我可以找到并替换所有INSERT INTO A.内容INSERT INTO B.,这将解决我的问题,但也许我可以为模式创建某种别名B,这样我就可以这样做(伪代码):
CREATE ALIAS 'A' FOR SCHEMA 'B'
@TABLE1.sql
@TABLE2.sql
DELETE ALIAS 'A'
Run Code Online (Sandbox Code Playgroud) .xlsx在将数据导出到SQL Developer 结果集中并从 SQL Developer 结果集中导出文件时,我遇到了一个非常奇怪的问题。我在 SQL Developer 和 Dbeaver 上运行了相同的查询。当我将数据从 SQL Developer 导出到.xlsx文件时,导出到工作表的行数为47519;当我通过 Dbeaver 将相同数据导出到.xlsx文件时,行数为87936。
我现在很困惑,要么是超出了 SQL Developer 的限制,要么是其他问题。好吧,我尝试了另一个结果集,然后 SQL Developer 导出的行数跳至 ,49916而在 Dbeaver 中,行数约为87534。
它造成了很多麻烦,因为过去几周我一直依赖通过 SQL Developer 导出的数据文件。
我只是想知道我在这里可能面临什么问题。
我试图在 DBeaver 中设置 Vertica 连接。但出现以下错误: 错误消息
我需要获取唯一 ID 的运行总数
select ID, min(date_time)
,case when ID is null then 0 else 1 end as New_ID
,SUM(New_ID) over (order by ID) as runningTotal_ID
from Table1
Group by 1
Run Code Online (Sandbox Code Playgroud)
或者也许我可以直接数
select Id, count(Id) over (order by ID) as Running Total
但绑定这个它给了我 10000...计数但只有 200 个 ID
任何人都可以帮我吗!
select * from users u
where u.id < 1000
Run Code Online (Sandbox Code Playgroud)
当我右键单击脚本并导出时,我没有选择任何数据库错误。
当我在上面添加“ use db ”命令时,出现语法错误。
use db
select * from users u
where u.id < 1000
Run Code Online (Sandbox Code Playgroud)
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在“SELECT * FROM..”附近使用的正确语法
如何在 DBeaver 中导出?我使用 MacOS,如果重要的话,数据库正在使用 MariaDB。
在 DBeaver 中使用哪个热键来缩进:
SELECT
column1,
column2
FROM table1
Run Code Online (Sandbox Code Playgroud)
对此:
SELECT
column1,
column2
FROM table1
Run Code Online (Sandbox Code Playgroud) 我想在一个选项卡中有多个选择语句。
我举个例子。
从表A中选择*
从表B中选择*
从表B中选择*
我想看到的结果:
表 A 的结果
表 B 的结果
表C的结果
有可能有这样的东西吗?我不想打开多个选项卡,我想在文本模式下的一个选项卡中获得多个结果。
在 PostgreSQL 数据库中,假设您想要添加一个名为 的列vehicle_type,并且您只希望出现以下 3 个条目之一:car、truck或motorcycle。我认为会有一种方法可以以某种方式定义它,但是尝试一下,并且阅读了很多文章,我不知道如何做到这一点。
注意:我正在使用 DBeaver 客户端,但也可以运行任何 SQL 命令。
有办法吗?
我正在使用MySql数据库.我需要将多个(超过10个)表格中的信息合并为一个表格.为了做到这一点,我遵循典型的加入方式.
Select * from
table_1
Join table_2
on(table_1.id = table_2.id)
Join table_3
on(table_1.id = table_3.id)
Run Code Online (Sandbox Code Playgroud)
它有效,但在执行期间我受了很多苦.有没有其他好方法来优化我的代码?以下是我的代码示例:
SELECT
distinct
u.Id,
oc.dt,
Daily_Number_Outgoing_Calls,
Daily_Number_Incoming_Calls,
Daily_duration_Outgoing_Calls
FROM
creditfix.users u
JOIN
#1 Daily_No_Out_Calls
(
SELECT
cl.uId,SUBSTRING(DATE,1,10) as dt,
count(1) as Daily_Number_Outgoing_Calls
From creditfix.call_logs as cl
WHERE
cl.`type`=2 #out going calls only
GROUP by cl.uId,dt
) oc
ON (u.Id=oc.Uid)
#2 Daily_No_In_Calls
JOIN
(
SELECT
cl.uId, SUBSTRING(DATE,1,10) as dt,
count(1) as Daily_Number_Incoming_Calls
From creditfix.call_logs as cl
WHERE
cl.`type`=1 #incoming calls only
GROUP by cl.uId,dt
) ic …Run Code Online (Sandbox Code Playgroud) 我正在尝试查询我通过 Java 脚本创建的 Apache Ignite 缓存(版本 2.2):
TcpDiscoverySpi spi = new TcpDiscoverySpi();
TcpDiscoveryVmIpFinder ipFinder=new TcpDiscoveryMulticastIpFinder();
List<String> adresses=new ArrayList<String>();
adresses.add("127.0.0.1:48500..48520");
ipFinder.setAddresses(adresses);
spi.setIpFinder(ipFinder);
IgniteConfiguration cfg=new IgniteConfiguration().setDiscoverySpi(spi).setClientMode(true);
CacheConfiguration cache_conf=new CacheConfiguration<String,Custom_Class>().setCacheMode(CacheMode.PARTITIONED).setAtomicityMode(CacheAtomicityMode.ATOMIC).setBackups(1).
setIndexedTypes(String.class,Custom_Class.class).setName("Spark_Ignite");
Ignite ignite=Ignition.getOrStart(cfg);
ignite.getOrCreateCache(cache_conf);
System.out.println("[INFO] CACHE CREATED");
ignite.close();
Run Code Online (Sandbox Code Playgroud)
我正在使用 DBeaver 对该缓存执行简单的 SQL 查询。
问题是,当我尝试进行查询时,出现此错误:
SELECT * FROM Custom_Class;
Table "Custom_Class" not found; SQL statement:SELECT * FROM Custom_Class
Run Code Online (Sandbox Code Playgroud)
如果我运行此查询,则相同:
SELECT * FROM Spark_Ignite;
Table "Spark_Ignite" not found; SQL statement:SELECT * FROM Spark_Ignite
Run Code Online (Sandbox Code Playgroud)
但是,如果我按照此处提到的说明进行操作:https://apacheignite-sql.readme.io/docs/sql-tooling,我可以毫无问题地获得查询结果。
我运行了 ignitevisor.sh,确实所有的缓存都在那里,而且都有记录:
这里可能有什么问题?
谢谢你。
更新
使用答案中提到的引号,我能够查询表,但它不显示任何记录,而 ignitevisor …
使用分隔符(默认为“;”)时,我无法执行 MySQL 语句。我的意思是,当我运行查询时:
select * from mdw.dim_date dd limit 10;
select * from mdw.dim_order do limit 5;
Run Code Online (Sandbox Code Playgroud)
我有这样的错误:
SQL 错误 [1064] [42000]:您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 2 行的“select * from mdw.dim_order do limit 5”附近使用正确的语法
我不想按 Alt+X(我正在使用 Dbeaver)执行此操作,因为我想将查询放入 pentaho。我需要执行大约 50 次删除,所以我不想将它划分为 50 个 SQL 脚本。
我正在使用 MySQL(版本:5.6.36-82.0)。
我是一名 Mac 用户,尝试设置 DBeaver 以连接到 Cassandra DB。 https://downloads.datastax.com/#odbc-jdbc-drivers没有可供 Apache Cassandra 下载的 Mac 版本。有适用于 Mac 设备的解决方案或替代 Cassandra DB 工具吗?
安装了 DBeaver 社区版。但没有附带 Cassandra 驱动程序。