Questions tagged «sql»

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

5
如何检查SQL数据库上是否存在函数
我需要找出数据库中是否存在函数,以便可以删除它并再次创建它。它基本上应该类似于我用于存储过程的以下代码: IF EXISTS ( SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[SP_TEST]') AND OBJECTPROPERTY(id, N'IsProcedure') = 1 )

3
锁定升级-这是怎么回事?
在SQL Server 2008中更改表(删除列)时,我单击了Generate Change Script按钮,我注意到它生成的更改脚本会删除该列,说“ go”,然后运行一个似乎要设置的附加ALTER TABLE语句表的锁定升级为“ TABLE”。例: ALTER TABLE dbo.Contract SET (LOCK_ESCALATION = TABLE) 我还要注意,这是更改脚本要做的最后一件事。它在做什么,为什么将LOCK_ESCALATION设置为TABLE?

11
人员“姓名”字段的合理长度限制是多少?
我有一个简单的Web表单,它将允许未经身份验证的用户输入其信息,包括姓名。我给name字段提供了50个字符的限制,以使其与数据库表中的字段varchar(50)一致,但是随后我开始怀疑。 使用“文本”列类型之类的方法更合适还是应该将名称的长度限制为合理的范围? 我正在使用SQL Server 2005,以防您的响应变得很重要。 编辑:关于类似问题,我没有看到这个更广泛的问题。
138 sql  html  textbox 


9
LINQ-to-SQL中不区分大小写的字符串比较
我已经读到使用ToUpper和ToLower执行不区分大小写的字符串比较是不明智的,但是在LINQ-to-SQL方面我看不到其他选择。LINQ-to-SQL会忽略String.Compare的ignoreCase和CompareOptions参数(如果使用区分大小写的数据库,则即使要求进行不区分大小写的比较,也会得到区分大小写的比较)。ToLower或ToUpper是这里的最佳选择吗?这个比那个好吗?我以为我在某处读到ToUpper更好,但是我不知道这在这里是否适用。(我正在做很多代码审查,每个人都在使用ToLower。) Dim s = From row In context.Table Where String.Compare(row.Name, "test", StringComparison.InvariantCultureIgnoreCase) = 0 这将转换为仅将row.Name与“ test”进行比较的SQL查询,并且在区分大小写的数据库上不会返回“ Test”和“ TEST”。
137 .net  sql  vb.net  linq  linq-to-sql 

5
在Oracle SQL Developer中使用tnsnames.ora
我正在评估Oracle SQL Developer。 tnsnames.ora填充了My ,并且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吗?

9
SQL关键字“ AS”的目的是什么?
您可以在SQL中设置表别名,然后在表名后面键入标识符。 SELECT * FROM table t1; 您甚至可以使用关键字AS来表示别名。 SELECT * FROM table AS t1; 它们之间有什么区别? 我看到DBA的老人们倾向于编写不带的语句AS,但是大多数新教程都使用它。 更新:我知道表和列别名的用途是什么。我很好奇,在没有别名的情况下使用单独的关键字设置别名的原因是什么。
137 sql 

18
什么是“多部分标识符”,为什么不能绑定它?
当我尝试基于另一个表更新表时,我不断收到这些错误。我最终重写了查询,更改了连接顺序,更改了一些分组,然后最终起作用了,但是我只是不太了解。 什么是“多部分标识符”? 什么时候不能绑定“多部分标识符”? 它到底绑定了什么? 在什么情况下会发生此错误? 预防它的最佳方法是什么? SQL Server 2005中的特定错误是: 多部分标识符“ ...”无法绑定。 这是一个例子: UPDATE [test].[dbo].[CompanyDetail] SET Mnemonic = [dbBWKMigration].[dbo].[Company].[MNEMONIC], [Company Code] = [dbBWKMigration].[dbo].[Company].[COMPANYCODE] WHERE [Company Name] = **[dbBWKMigration].[dbo].[Company].[COMPANYNAME]** 实际错误: 消息4104,级别16,状态1,第3行不能绑定多部分标识符“ dbBWKMigration.dbo.Company.COMPANYNAME”。
137 sql  sql-server 

11
SQL订单字符串作为数字
我将数字保存VARCHAR到MySQL数据库。INT由于某些其他情况,我无法制作它们。 排序时将它们当作字符而不是数字。 在数据库中我有 1 2 3 4 5 6 7 8 9 10... 在我的页面上,它显示如下排序列表: 1 10 2 3 4 5 6 7 8 9 如何使它按数字升序显示?


24
我应如何命名将两个表映射在一起的表?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 3年前关闭。 改善这个问题 假设我有两个表: Table: Color Columns: Id, ColorName, ColorCode Table: Shape Columns: Id, ShapeName, VertexList 我该如何称呼将颜色映射为形状的表? Table: ??? Columns: ColorId, ShapeId

10
存储过程和视图之间有什么区别?
我对以下几点感到困惑: 存储过程和视图之间有什么区别? 在SQL Server中,什么时候应该使用存储过程,什么时候应该使用视图? 视图是否允许在可以传递参数的地方创建动态查询? 哪一个最快,在什么基础上比另一个快? 视图或存储过程是否永久分配内存? 如果有人说视图创建虚拟表,而过程创建物料表,那又意味着什么呢? 如果有任何其他问题,请让我知道。

12
还原sql时psql无效命令\ N
我正在尝试还原我的转储文件,但是导致了错误: psql:psit.sql:27485: invalid command \N 有解决方案吗?我进行了搜索,但没有得到明确的答案。
137 sql  postgresql  dump 


20
不使用select *的原因是什么?
我见过很多人声称,您应该在选择查询中专门为想要的每一列命名。 假设我仍然要使用所有列,为什么我不使用SELECT *? 即使考虑问题* SQL查询-从视图*选择*或从视图 * 选择col1,col2,…colN,我也不认为这是完全相同的副本,因为我正从稍微不同的角度来解决这个问题。 我们的原则之一是在优化之前就不进行优化。考虑到这一点,在被证明是资源问题或架构几乎是固定的之前,似乎SELECT *应该使用首选方法。众所周知,只有完成开发后,这种情况才会发生。 就是说,有一个最重要的问题不使用SELECT *吗?
136 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.