Tag: sql

如何将一个string转换为整型,并且在PostgreSQL中转换时出现错误0?

在postgres中我有一个varchar列的表。 数据应该是整数,我需要它在迭代types的查询。 有些值是空string。 下列: SELECT myfield::integer FROM mytable 产生ERROR: invalid input syntax for integer: "" 如何查询一个强制转换,并在postgres中抛出时出错?

SQL组通过一个订单

我有一个标签表,并希望从列表中获得最高的计数标签。 示例数据如下所示 id (1) tag ('night') id (2) tag ('awesome') id (3) tag ('night') 运用 SELECT COUNT(*), `Tag` from `images-tags` GROUP BY `Tag` 让我回到我正在寻找完美的数据。 不过,我想组织它,所以最高的标签数量是第一,并限制它只送我前20左右。 我试过这个… SELECT COUNT(id), `Tag` from `images-tags` GROUP BY `Tag` ORDER BY COUNT(id) DESC LIMIT 20 我一直得到“无效的使用组function – ErrNr 1111” 我究竟做错了什么? 我正在使用MySQL 4.1.25-Debian

如何编写LINQ的.Skip(1000)。在纯SQL中取(100)?

什么是LINQ中.Skip()方法的SQL等价物? 例如:我想从特定的数据库表中select1000-1100行。 这是可能的只是SQL? 或者我需要select整个表,然后find内存中的行? 如果可能的话,我最好避免这种情况,因为桌子可能相当大。

一次修理所有表格

如何一次检查数据库中的所有表? 而不是input查询check table ''tablename''; 所有的桌子一个接一个。 有没有像check all或类似的简单命令?

是一个专栏表好devise吗?

有一列只有一张桌子可以吗? 我知道这在技术上不是非法的,但它被认为是糟糕的devise? 编辑: 这里有一些例子: 你有一个有50个有效的美国州代码的表,但是你不需要存储详细的状态名称。 电子邮件黑名单。 有人提到添加一个关键字段。 我看到的方式,这个单列将是主要的关键。

命名约定为唯一约束

命名约定很重要,主键和外键通常使用明显的约定(分别为PK_Table和FK_Table_ReferencedTable )。 索引的IX_Table_Column命名也是相当标准的。 那么UNIQUE约束呢? 这个约束是否有一个通用的命名约定? 我见过UK_TableName_Column , UQ_TableName_Column和有人推荐AX_TableName_Column – 我不知道这是从哪里来的。 我通常使用UQ但我并不特别喜欢它,而且我也不喜欢为保卫我对UK代言人的select。 我只想看看是否对最stream行的命名达成共识,或者说为什么比其他的更有意义。

什么是全文search与LIKE

我刚刚在SQL中读了一篇提到“全文search”的文章。 我只是想知道FTS和LIKE之间的区别是什么。 我读了几篇文章,但没有find解释得很好的东西。

我怎样才能使用LINQ做SELECT UNIQUE?

我有这样一个列表: Red Red Brown Yellow Green Green Brown Red Orange 我想用LINQ做一个SELECT UNIQUE,也就是我想要的 Red Brown Yellow Green Orange var uniqueColors = from dbo in database.MainTable where dbo.Property == true select dbo.Color.Name; 然后我改变了 var uniqueColors = from dbo in database.MainTable where dbo.Property == true select dbo.Color.Name.Distinct(); 没有成功。 第一个select获取所有的颜色,所以我如何修改它只获得唯一的值? 如果有更好的方法来构build这个查询,那么很高兴能走这条路。 我怎么去编辑它,所以我可以有.OrderBy(“列名称”)即按字母顺序的颜色名称,所以名称属性? 我不断收到消息: types参数不能从用法中推断出来。 尝试明确指定types参数。

为什么我不能在DELETE语句中使用别名?

在Visual Studio 2010中的SQL Server Compact Edition(也许一般是SQL Server和SQL,我不知道),这个命令的工作原理: DELETE FROM foods WHERE (name IN ('chickens', 'rabbits')) 但是这个命令会产生一个错误: Error near identifier f. Expecting OUTPUT. Error near identifier f. Expecting OUTPUT. DELETE FROM foods f WHERE (f.name IN ('chickens', 'rabbits'))

EF 4.1exception“提供程序没有返回ProviderManifestTokenstring”

我正在尝试复制在MSDN上find的示例。 我正在使用ASP.NET和EF 4.1(CTP?)。 我已经使用NuGet来安装EntityFramework软件包。 我得到这个错误: The provider did not return a ProviderManifestToken string …和数据库永远不会被创build。 这是我的连接string: <add name="HospitalContext" connectionString= "data source=.\SQLExpress;initial catalog=NewTestDB;integrated security=True;" providerName="System.Data.SqlClient"/> 这是我的代码: var pat = new Patient { Name = "Shane123132524356436435234" }; db.Patients.Add(pat); var labResult = new LabResult { Result = "bad", Patient = pat }; int recordAffected = db.SaveChanges(); 这是我的背景: public class […]