Questions tagged «sql»

结构化查询语言(SQL)是用于查询数据库的语言。问题应包括代码示例,表结构,示例数据以及正在使用的DBMS实现的标签(例如MySQL,PostgreSQL,Oracle,MS SQL Server,IBM DB2等)。如果您的问题仅涉及特定的DBMS(使用特定的扩展名/功能),请改用该DBMS的标签。使用SQL标记的问题的答案应使用ISO / IEC标准SQL。

6
显示Oracle SQL中表的所有约束的名称
我为在Oracle SQL中创建的多个表的每个约束定义了一个名称。 问题是要为特定表的列删除约束,我需要知道为每个约束提供的名称,而我忘记了。 如何列出为表的每一列指定的所有约束名称? 有没有这样做的SQL语句?

16
在所有表的所有字段中搜索特定值(Oracle)
是否可以在每个表的每个字段中搜索Oracle中的特定值? 有几百个表,有些表中有成千上万的行,因此我知道这可能需要很长时间才能查询。但是我唯一知道的是我要查询的字段的值是1/22/2008P09RR8。< 我尝试使用下面的语句根据我认为应命名的内容找到合适的列,但未返回任何结果。 SELECT * from dba_objects WHERE object_name like '%DTN%' 这个数据库上绝对没有文档,我也不知道该字段是从哪里提取的。 有什么想法吗?

8
如果不存在PostgreSQL,可以模拟CREATE DATABASE吗?
我想创建一个通过JDBC不存在的数据库。与MySQL不同,PostgreSQL不支持create if not exists语法。做到这一点的最佳方法是什么? 应用程序不知道数据库是否存在。它应该检查数据库是否存在并且应该使用它。因此,连接到所需的数据库很有意义,并且如果由于数据库不存在而导致连接失败,则应该创建新数据库(通过连接到默认postgres数据库)。我检查了Postgres返回的错误代码,但找不到与之相同的任何相关代码。 实现此目的的另一种方法是连接到postgres数据库,并检查所需的数据库是否存在,并采取相应的措施。第二个要解决一些麻烦。 有没有办法在Postgres中实现此功能?
115 sql  database  postgresql  jdbc  ddl 

13
如何在数据库表的列中存储列表
因此,按照Mehrdad对一个相关问题的回答,我得到一个“适当的”数据库表列不存储列表的信息。相反,您应该创建另一个表,该表可以有效地保存所述列表的元素,然后直接或通过联结表链接到该列表。但是,我要创建的列表类型将由唯一项组成(与链接问题的成果不同)例)。此外,列表中的项目已明确排序-这意味着如果将元素存储在另一个表中,则每次访问它们时都必须对它们进行排序。最后,该列表基本上是原子性的,因为无论何时我想访问该列表,我都想访问整个列表,而不只是其中的一部分-因此,必须发出数据库查询以将各个部分汇总在一起似乎很愚蠢。名单。 AKX的解决方案(在上面链接)是序列化列表并将其存储在二进制列中。但这似乎也不方便,因为这意味着我必须担心序列化和反序列化。 有没有更好的解决方案?如果是没有更好的解决办法,那么为什么呢?似乎这个问题应该不时出现。 ...只是更多信息,让您知道我来自哪里。我刚开始大致了解SQL和数据库后,便开始使用LINQ to SQL,所以现在我有点被宠坏了,因为我希望处理我的编程对象模型而不必考虑对象的方式被查询或存储在数据库中。 谢谢大家! 约翰 更新:所以在得到的第一批答案中,我看到“您可以使用CSV / XML路线...但是不要!”。所以现在我正在寻找原因的解释。为我提供一些很好的参考。 另外,为了让您更好地了解自己的工作情况:在数据库中,我有一个功能表,该表将具有(x,y)对的列表。(该表还将包含其他信息,这些信息对我们的讨论没有影响。)我将永远不需要看到(x,y)对列表的一部分。而是,我将所有这些都放置在屏幕上。我将允许用户拖动节点以偶尔更改值或向图中添加更多值。

13
如何使用SELECT INTO OUTFILE解决MySQL Errcode 13?
我正在尝试使用MySQL SELECT INTO OUTFILE语句将表的内容转储到csv文件中。如果我做: SELECT column1, column2 INTO OUTFILE 'outfile.csv' FIELDS TERMINATED BY ',' FROM table_name; outfile.csv将在服务器上与数据库文件存储在同一目录中创建。 但是,当我将查询更改为: SELECT column1, column2 INTO OUTFILE '/data/outfile.csv' FIELDS TERMINATED BY ',' FROM table_name; 我得到: ERROR 1 (HY000): Can't create/write to file '/data/outfile.csv' (Errcode: 13) Errcode 13是一个权限错误,但是即使将/ data的所有权更改为mysql:mysql并赋予它777权限,我也得到了它。MySQL以用户“ mysql”的身份运行。 奇怪的是,我可以在/ tmp中创建该文件,但是不能在我尝试过的任何其他目录中创建该文件,即使设置了权限,以便用户mysql应该能够写入该目录。 这是在Ubuntu上运行的MySQL 5.0.75。
114 mysql  sql  into-outfile 

10
从SQLite表中删除列
我有一个问题:我需要从SQLite数据库中删除一列。我写了这个查询 alter table table_name drop column column_name 但它不起作用。请帮我。
114 sql  sqlite  ddl 

7
为什么我们总是喜欢在SQL语句中使用参数?
我对使用数据库非常陌生。现在我可以写SELECT,UPDATE,DELETE,和INSERT命令。但是我看过很多我们喜欢写的论坛: SELECT empSalary from employee where salary = @salary ...代替: SELECT empSalary from employee where salary = txtSalary.Text 为什么我们总是喜欢使用参数,我将如何使用它们? 我想知道第一种方法的用途和好处。我什至听说过SQL注入,但我并不完全了解。我什至不知道SQL注入是否与我的问题有关。

9
MySQL偏移无限行
我想构造一个查询,在表中显示所有结果,但是从表的开头偏移5。据我所知,MySQL LIMIT需要一个限制和一个偏移量。有什么办法吗?
114 mysql  sql  sql-limit 

12
当参数不是字符串时,不对SQL查询进行参数化是否安全?
在SQL注入方面,我完全理解了参数化string参数的必要性。那是书中最古老的把戏之一。但是什么时候可以证明不对参数进行参数化SqlCommand呢?是否将任何数据类型视为“安全的”而不进行参数化? 例如:我不会认为自己是SQL专家附近的任何地方,但是我无法想到在任何情况下都可能容易接受SQL注入以接受a bool或an int并将其直接连接到查询中。 我的假设是正确的,还是可能在程序中留下巨大的安全漏洞? 为了澄清起见,标记了这个问题 C#这是一种强类型的语言;当我说“参数”时,请想一想 public int Query(int id)。


11
如何使用SQL重命名数据库表中的列?
如果我想使用SQL在SQL数据库中简单地重命名一列(而不更改其类型或约束,仅更改其名称),该怎么做?还是不可能? 这适用于任何声称支持SQL的数据库,我只是在寻找一个特定于SQL的查询,无论实际的数据库实现如何,该查询都将起作用。



4
MySQL中有两个单列索引还是一个两个列索引?
我面临以下问题,我不确定什么是最佳实践。 考虑下表(该表会变大): id PK | Giver_id FK | FK | 日期 我正在使用InnoDB,据我了解,它会自动为两个外键列创建索引。但是,在需要匹配以下特定组合的情况下,我还会做很多查询: SELECT...WHERE giver_id = x AND recipient_id = t。 每个这样的组合在表中将是唯一的。 在这些列上添加双列索引有什么好处,还是理论上两个单独的索引足够/相同?

10
删除PostgreSQL中的重复记录
我在PostgreSQL 8.3.8数据库中有一个表,该表上没有键/约束,并且有多个行,它们的值完全相同。 我想删除所有重复项,并且每行仅保留1个副本。 特别是有一列(称为“密钥”)可用于标识重复项(即,每个不同的“密钥”应该只存在一个条目)。 我怎样才能做到这一点?(最好是使用单个SQL命令)在这种情况下,速度不是问题(只有几行)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.