小编The*_*war的帖子

使用多列的 MySQL 搜索

我的表格有一个城市和描述列,我的网页有一个搜索字符串的单一输入..

如果我输入我的输入,furniture production我会得到company name,所以很好,但是如果我想对furniture production london城市做类似这个字符串的事情,我不会得到任何结果。

如何修复此查询以与城市列或其他列一起使用?

SELECT slug, title FROM catalog WHERE city || description LIKE '%$keyword%
Run Code Online (Sandbox Code Playgroud)

mysql sql

2
推荐指数
1
解决办法
3937
查看次数

如何在SQL Server 2014中描述表

我正在使用SQLSERVER 2014 Express并创建了EmployeeTable

我想知道Employee表格的详细说明

像NULL或NOT NULL和数据类型

在Oracle中我们desc Employee喜欢任何语法?请帮我

t-sql sql-server sql-server-2014-express

2
推荐指数
1
解决办法
7615
查看次数

Azure SQL数据库和EXECUTE AS USER - C#连接池

我有一个Azure SQL数据库和一些使用它的C#业务应用程序.我一直在努力减少攻击面并更好地理解性能.

在SQL Azure包含的数据库中,我有:
1)一个SQL身份验证用户,其登录名为"ReaderUser",具有固定的长而疯狂的密码.
2)在数据库中创建的用户无需登录使用:CREATE USER [] WITHOUT LOGIN
3)包含数据的表,由USER和行级别安全保护.ReaderUser无法访问任何数据,它只是一个"代理"用户.
4)ReaderUser可以模拟任何其他非管理用户("无需登录"创建的品种).数据只能由它们中的任何一个读取.

当用户访问我们开发的应用程序时,数据库连接是使用ReaderUser进行的.应用程序使用.Net 4.6.2 ADO.net连接.连接字符串已加密并已修复.即它对于任何用户都没有改变,它们都使用相同的连接字符串.

当应用程序用户登录时,登录的应用程序标识(Active Directory UPN)随后将传递到数据库以使用以下方法设置正确的用户上下文:

EXECUTE AS USER = 'myuser@mydomain.com' WITH NO REVERT;
Run Code Online (Sandbox Code Playgroud)

然后,用户访问应用程序并仅查看其数据,受行级别安全性的限制.

我的问题是,如何汇集联系?它们是按用户还是按ReaderUser登录(连接字符串)汇集?用户可以使用相同的连接字符串同时从多个应用程序连接.我已经浏览了几篇文章,但我无法对这个具体情况做出明确的解释.任何人都能解释一下吗?

c# sql-server ado.net database-connection azure-sql-database

2
推荐指数
1
解决办法
592
查看次数

计算树中值的总和(递归查询)

我在表员工(id,name,parentid)中有树结构,并且该表可以嵌套。employees 与另一个具有列(id,employeeid,quantity)的 Sales 表是一对多关系。每个员工都有销售数量。我想计算每个员工以及儿童员工的数量总和。我写了一些代码以便更清楚。

DECLARE @Employees TABLE(ID INT, Name NVARCHAR(100), ParentID INT);
DECLARE @Sales TABLE(ID INT, EmployeeID INT, Quantity INT);    

INSERT INTO @Employees(ID, Name, ParentID)VALUES
(1,N'Employee1', NULL),
(2,N'Employee2', 1),
(3,N'Employee3', 2),
(4,N'Employee4', NULL),
(5,N'Employee5', 4),
(6, N'Employee6', 5)

INSERT INTO @Sales(ID, EmployeeID, Quantity)VALUES
(1,1,4),
(2,1,2),
(3,2,3),
(4,3,2),
(5,3,7),
(6,5,8),
(7,5,3),
(8,6,2)
Run Code Online (Sandbox Code Playgroud)

我加入了这个表,看起来像这样:

在此输入图像描述

这是我的查询

;WITH cte 
AS
(
  SELECT e.ID, e.Name, e.ParentID FROM @Employees e
  WHERE e.ParentID IS NULL
  UNION ALL
  SELECT  e.ID, e.Name, e.ParentID  FROM @Employees e
    INNER JOIN cte …
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-server-2008 sql-server-2012

2
推荐指数
1
解决办法
2662
查看次数

SQL Server中的数据库处于恢复模式

我在Microsoft SQL Server中有两个数据库(在同一台服务器上).其中一个可以远程成功访问.但是,其他没有.它在错误日志中返回以下消息:

用户'adminUsr'登录失败.原因:无法打开显式指定的数据库'alg_test.alg_test'.[客户:]

错误:18456,严重性:14,状态:38.

然后我转到Microsoft SQL服务器管理并检查数据库的状态:

*SELECT databasepropertyex('alg_test.alg_test', 'STATUS')*
Run Code Online (Sandbox Code Playgroud)

得到了这个:

RECOVERING

似乎数据库不断恢复.我怎样才能解决这个问题?最后远程访问数据库.

database sql-server recovery

2
推荐指数
1
解决办法
6万
查看次数

交叉连接时出错

我有下面的代码,但收到错误消息

(select count(*) as countT from dbo.P1 )  a
cross join (select count(*) as cN from dbo.[D2] ) b
cross join  (select count(*) as cM from dbo.m1)  c
Run Code Online (Sandbox Code Playgroud)

消息102,级别15,状态1,行
1'a'附近的语法不正确.
消息102,级别15,状态1,行
2'b'附近的语法不正确.
消息102,级别15,状态1,行
3'c'附近的语法不正确.

我做错了什么?

t-sql sql-server sql-server-2008 sql-server-2008-r2 sql-server-2012

2
推荐指数
1
解决办法
390
查看次数

临时表已存在

嗨,我有一个临时表,我试图在其中插入基于 where 条件的记录,但它抛出一个错误,表明它已经存在。我曾尝试更改名称,但这不是问题,因为会话结束时会删除临时表。

我想我写的查询是正确的。

   SELECT [Name]
        INTO #TEMP_REJECT
        FROM #TEMP_VALIDATION
        WHERE Name = @Name
Run Code Online (Sandbox Code Playgroud)

我正在尝试插入 #TEMP_REJECT FROM #TEMP_VALIDATION

错误信息

“数据库中已经有一个名为‘#TEMP_REJECT’的对象。”

请建议。

感谢您的帮助。电阻

sql sql-server

2
推荐指数
2
解决办法
1万
查看次数

我可以使用SQL更改SQL Azure ServiceObjective(定价层)

因此,我使用Visual Studio数据库项目将数据库发布到Azure。

默认情况下,这会将数据库发布为S0定价层。然后,我必须登录门户并将“定价”层更改为S1

这个答案中,我可以看到有人ServiceObjective在创建数据库时设置了属性,如下所示:

CREATE DATABASE 
[{databaseName}] 
(MAXSIZE={maxSize}, EDITION='{edition}',SERVICE_OBJECTIVE='{serviceObjective}'
Run Code Online (Sandbox Code Playgroud)

在门户中更改定价层后,我运行以下命令:

SELECT DATABASEPROPERTYEX('MyDatabaseName', 'ServiceObjective')
Run Code Online (Sandbox Code Playgroud)

它返回,S1所以我确定ServiceObjective是正确的属性

但是我的问题是我可以使用以下命令创建数据库后设置此属性吗? Alter

sql azure azure-sql-database

2
推荐指数
1
解决办法
1459
查看次数

计算不同的和非不同的值

我有一个看起来像这样的SQL表:

+----+-----------+------------+
| Id | EnquiryId | PropertyId |
+----+-----------+------------+
|  1 |         1 |        20  |
|  2 |         1 |        25  |
|  3 |         1 |        26  |
|  4 |         2 |        20  |
|  5 |         3 |        20  |
|  6 |         4 |        20  |
+----+-----------+------------+

我想计算一下propertyid 20有多少查询,以及与其他属性共享多少查询

所以结果应该是这样的:

单个工程数:3

共享查询次数:1

如果它需要两个选择语句,那就完全没问题:)

到目前为止的尝试看起来像这样:

(select count(distinct [EnquiryId]) 
from [EnquiryProperty] where propertyid=20) as 'SingleEnquiry'
Run Code Online (Sandbox Code Playgroud)

这给了我4个结果(我需要它3)

(select count([PropertyId]) FROM [EnquiryProperty] where propertyid=20 GROUP BY propertyid HAVING …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

2
推荐指数
1
解决办法
286
查看次数

SQL删除临时表

在存储过程中删除表是一种更好的做法?

样品A.

IF OBJECT_ID('tempdb..#tTable1') IS NOT NULL
  DROP TABLE #tTable1
CREATE TABLE #tTable1
Run Code Online (Sandbox Code Playgroud)

样品B.

CREATE TABLE #tTable1
select * from #tTable1
Drop TABLE #tTable1
Run Code Online (Sandbox Code Playgroud)

sql database sql-server

2
推荐指数
1
解决办法
68
查看次数