标签: sql

通过SQL查询获取特定数据库的所有表名?

我正在开发可以处理多个数据库服务器的应用程序,如"MySQL"和"MS SQL Server".

我想使用适用于所有数据库类型的通用查询来获取特定数据库的表名.我试过以下:

SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'
Run Code Online (Sandbox Code Playgroud)

但它给出了特定服务器的所有数据库的表名,但我想获取所选数据库的表名.如何限制此查询以获取特定数据库的表?

sql sql-server

283
推荐指数
10
解决办法
106万
查看次数

在一个sql语句中删除所有表,存储过程,触发器,约束和所有依赖项

有没有什么方法可以通过删除所有表并删除一个SQL语句中的存储过程,触发器,约束和所有依赖项来清理SQl Server 2005中的数据库?

请求的理由:

我希望有一个数据库脚本来清理未使用的现有数据库,而不是创建新数据库,特别是当您必须向数据库管理员发出请求并等待一段时间才能完成时!

sql t-sql sql-server sql-server-2005

282
推荐指数
8
解决办法
28万
查看次数

什么是存储过程?

什么是存储过程?他们是如何工作的?什么是存储过程的组成(每个必须是存储过程的东西)?

sql t-sql sql-server stored-procedures

281
推荐指数
8
解决办法
52万
查看次数

SQL排序升序时如何使空值最后

我有一个带有日期时间字段的SQL表.有问题的字段可以为null.我有一个查询,我希望结果按日期时间字段按升序排序,但是我想要在列表末尾的日期时间字段为空的行,而不是在开头.

有没有一种简单的方法来实现这一目标?

sql sorting sql-order-by

280
推荐指数
10
解决办法
23万
查看次数

在Oracle上使用内部联接更新语句

我有一个在MySQL中工作正常的查询,但是当我在Oracle上运行时,我收到以下错误:

SQL错误:ORA-00933:SQL命令未正确结束
00933. 00000 - "SQL命令未正确结束"

查询是:

UPDATE table1
INNER JOIN table2 ON table1.value = table2.DESC
SET table1.value = table2.CODE
WHERE table1.UPDATETYPE='blah';
Run Code Online (Sandbox Code Playgroud)

sql oracle inner-join ora-00933

280
推荐指数
7
解决办法
70万
查看次数

从Django QuerySet获取SQL

如何从QuerySet对象获取Django将在数据库中使用的SQL?我正在尝试调试一些奇怪的行为,但我不确定哪些查询会进入数据库.谢谢你的帮助.

python sql django django-queryset

279
推荐指数
5
解决办法
14万
查看次数

SQL Server - INSERT后的返回值

我试图在INSERT声明后得到一个键值.示例:我有一个包含属性name和id的表.id是生成的值.

    INSERT INTO table (name) VALUES('bob');
Run Code Online (Sandbox Code Playgroud)

现在我想在同一步骤中恢复身份.这是怎么做到的?

我们正在使用Microsoft SQL Server 2008.

sql sql-server sql-server-2008

279
推荐指数
8
解决办法
48万
查看次数

如何使用一个SQL查询获取多个计数?

我想知道如何编写此查询.

我知道这个实际的语法是假的,但它会帮助你理解我想要的东西.我需要这种格式,因为它是一个更大的查询的一部分.

SELECT distributor_id, 
COUNT(*) AS TOTAL, 
COUNT(*) WHERE level = 'exec', 
COUNT(*) WHERE level = 'personal'
Run Code Online (Sandbox Code Playgroud)

我需要在一个查询中返回所有内容.

此外,它需要在一行,所以以下将不起作用:

'SELECT distributor_id, COUNT(*)
GROUP BY distributor_id'
Run Code Online (Sandbox Code Playgroud)

mysql sql join group-by count

278
推荐指数
8
解决办法
32万
查看次数

Oracle:如何UPSERT(更新或插入表?)

UPSERT操作更新或在表中插入一行,具体取决于表是否已有一行与数据匹配:

if table t has a row exists that has key X:
    update t set mystuff... where mykey=X
else
    insert into t mystuff...
Run Code Online (Sandbox Code Playgroud)

由于Oracle没有特定的UPSERT语句,最好的方法是什么?

sql oracle merge upsert

277
推荐指数
9
解决办法
39万
查看次数

如何获得java.sql.ResultSet的大小?

这不应该是一个非常简单的操作吗?但是,我看到既没有size()也没有length()方法.

java sql jdbc resultset record-count

276
推荐指数
6
解决办法
43万
查看次数