我正在评估Oracle SQL Developer.
我tnsnames.ora已填充,并且tnsping定义的连接tnsnames.ora工作正常.但是,SQL Developer不显示任何连接.
Oracle SQL Developer Soars提到,如果
如果您的计算机上已经安装了Oracle客户端软件和tnsnames.ora文件,Oracle SQL Developer将自动从tnsnames.ora中定义的网络服务名称填充Connections导航器.
我还尝试设置我的TNS_ADMIN环境变量,但重启SQL Developer后仍然没有显示连接.
有任何想法吗?
有没有成功使用SQL Developer和tnsnames.ora的人?
我有一个user_interactions有4列的表:
user_1
user_2
type
timestamp
Run Code Online (Sandbox Code Playgroud)
主键是(user_1,user_2,type)
,我想改为(user_2,user_1,type)
所以我做的是:
drop primary key ...
add primary key (user_2,user_1,type)...
Run Code Online (Sandbox Code Playgroud)
瞧...
问题是数据库在服务器上是活的.
因此,在我更新主键之前,许多重复项已经悄悄进入,并且它们不断涌入.
该怎么办?
我现在要做的是删除重复项并保留最新的重复项timestamp(这是表中的一列).
然后以某种方式再次更新主键.
我正在尝试使用SQL Developer连接到oracle数据库.
我安装了.Net oracle驱动程序并将tnsnames.ora文件放在
C:\Oracle\product\11.1.0\client_1\Network\Admin
我在tnsnames.ora中使用以下格式:
dev =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.XXX.XXX)(PORT = XXXX))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = idpdev2)
)
)
Run Code Online (Sandbox Code Playgroud)
在SQL Developer中,当我尝试创建新连接时,没有TNS名称显示为选项.
有什么我想念的吗?
我正在尝试创建一个视图,我希望列只有真或假.但是,似乎无论我做什么,SQL Server(2008)都认为我的位列可能会以某种方式为空.
我有一个名为"Product"的表,其中包含"Status"列INT, NULL.在视图中,我想为Product中的每一行返回一行,如果Product.Status列等于3,则将BIT列设置为true,否则位字段应为false.
示例SQL
SELECT CAST( CASE ISNULL(Status, 0)
WHEN 3 THEN 1
ELSE 0
END AS bit) AS HasStatus
FROM dbo.Product
Run Code Online (Sandbox Code Playgroud)
如果我将此查询保存为视图并查看对象资源管理器中的列,则将HasStatus列设置为BIT, NULL.但它永远不应该是NULL.我可以使用一些神奇的SQL技巧来强制使用此列NOT NULL.
请注意,如果我删除了CAST()周围的CASE列,则列被正确设置为NOT NULL,但是列的类型设置为INT,这不是我想要的.我想要它BIT.:-)
我想得到column1的总和,column2的总和和总和.在Postgres我可以这样做:( 注意明星)
SELECT *, a+b AS total_sum FROM
(
SELECT SUM(column1) AS a, SUM(column2) AS b
FROM table
)
Run Code Online (Sandbox Code Playgroud)
但是在Oracle中我遇到语法错误并且必须使用它:
SELECT a,b, a+b AS total_sum FROM
(
SELECT SUM(column1) AS a, SUM(column2) AS b
FROM table
)
Run Code Online (Sandbox Code Playgroud)
我有很多列要返回,所以我不想在主查询中再次写入列名.有没有简单的解决方案?
我不能在内部查询中使用+ b,因为在这个地方不知道.我不想用SELECT SELECT SUM(column1) AS a, SUM(column2) AS b, SUM(column1)+SUM(column2) AS total_sum.
我想同时显示两个(或更多)JFrame.
当我关闭其中一个(使用默认关闭按钮)时,其他帧仍应可见.
我怎样才能做到这一点?
我试图在我的一个表上创建一个外键,引用一个不同模式的表的列.
像这样的东西:
ALTER TABLE my_schema.my_table ADD (
CONSTRAINT my_fk
FOREIGN KEY (my_id)
REFERENCES other_schema.other_table(other_id)
)
Run Code Online (Sandbox Code Playgroud)
由于我有必要的补助金,这很好.
现在我想知道是否有理由不在不同的模式中引用表,或者需要注意什么?
我有一个存储ID和商店所在城市的表.
我想列出从商店最多的商店开始的所有商店.
表
ID CITY
1 NYC
2 BOS
3 BOS
4 NYC
5 NYC
Run Code Online (Sandbox Code Playgroud)
我想要的输出是以下,因为我在纽约市拥有最多的商店,我希望首先列出所有纽约市的位置.
1 NYC
4 NYC
5 NYC
2 BOS
3 BOS
Run Code Online (Sandbox Code Playgroud) 我在Oracle中有一个表,其中包含以下Schema:
City_ID Name State Country BuildTime Time
Run Code Online (Sandbox Code Playgroud)
当我声明表时,我的主键是两个City_ID并且BuildTime现在我想将主键更改为三列:
City_ID BuildTime Time
Run Code Online (Sandbox Code Playgroud)
如何更改主键?