标签: sql

为什么我会间歇性地得到这个错误?"服务器未找到或无法访问"

我们在Web应用程序中随机出现此错误.

System.Data.SqlClient.SqlException:建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)

如果我们有时间得到错误,但是间歇性地提出其他事情正在进行,那将是有意义的.

有没有人经历过这个?有什么建议或理论吗?

谢谢!

sql asp.net ado.net sql-server-2005

11
推荐指数
2
解决办法
5174
查看次数

如何仅将日期时间转换为日期(时间设置为00:00:00.000)

我有一个字符串'2009-06-24 09:52:43.000',我需要将其插入到表的DateTime列中.

但是我不在乎时间,只想插入它作为2009-06-24 00:00:00.000

我怎么能在T-SQL中做到这一点?

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

11
推荐指数
4
解决办法
7万
查看次数

为什么在Postgres中没有"SELECT foo.*... GROUP BY foo.id"?

我有这样的查询:

select foo.*, count(bar.id)
from foo inner join bar on foo.id = bar.foo_id
group by foo.id
Run Code Online (Sandbox Code Playgroud)

这适用于SQLite和MySQL.然而,Postgres抱怨我不包括group by条款中的所有foo列.为什么是这样?foo.id是独一无二的还不够吗?

sql postgresql

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

LSN在SQL Server中的含义是什么?

Log Sequence Number是什么意思?我知道它是二进制类型和10bytes长,它对应于DB中事务发生的时间.但这是一个高精度的日期时间值,以某种有效的二进制格式存储,或者这是日期时间和其他东西的函数(例如,在相同的毫秒时间内发生的事务的序列号).我做了很多搜索,但找不到合适的答案.

任何人都可以解释用于从日期时间或任何事物中导出LSN的公式或函数.

sql architecture sql-server logging cdc

11
推荐指数
3
解决办法
3万
查看次数

TSQL - 如何查找列是否有空格char(32)?

TSQL - 如何查找列是否有空格char(32)

select *
from [sometable]
where CHARINDEX(' ', [somecolumn]) > 0
Run Code Online (Sandbox Code Playgroud)

不起作用?有任何想法吗?

sql t-sql sql-server

11
推荐指数
3
解决办法
7万
查看次数

SQLAlchemy:对结果进行操作

我正在尝试做一些相对简单的事情,吐出列名和各自的列值,并可能过滤掉一些列,这样就不会显示它们.

这是我尝试的(当然是在初始连接之后):

metadata = MetaData(engine)

users_table = Table('fusion_users', metadata, autoload=True)

s = users_table.select(users_table.c.user_name == username)
results = s.execute()

if results.rowcount != 1:
    return 'Sorry, user not found.'
else:
    for result in results:
    for x, y in result.items()
        print x, y
Run Code Online (Sandbox Code Playgroud)

我查看了SQLAlchemy(v.5)上的API,但是很困惑.'结果'中的'结果'是一个RowProxy,但我认为它不会为.items()调用返回正确的对象.

假设我的表结构是这样的:

user_id    user_name    user_password    user_country
0          john         a9fu93f39uf      usa
Run Code Online (Sandbox Code Playgroud)

我想过滤并指定要显示的列名称(我不想显示user_password) - 我该如何实现?

python sql sqlalchemy

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

找到与Min/Max关联的行,没有内部循环

我有一个与T-SQL和SQL Server有关的问题.

假设我有一个包含2列的表订单:

  • ProductId int
  • CustomerId int
  • 日期日期时间

我想要每个产品的第一个订单的日期,所以我执行这种类型的查询:

SELECT ProductId, MIN(Date) AS FirstOrder 
FROM Orders
GROUP BY ProductId
Run Code Online (Sandbox Code Playgroud)

我有一个索引ProductId,包括列CustomerIdDate加速查询(IX_Orders).查询计划看起来像是非聚集索引扫描IX_Orders,后面是流聚合(由于索引没有排序).

现在我的问题是我还要检索CustomerId与每个产品的第一个订单相关联的产品(产品26在25日星期二首次订购,由客户12订购).棘手的部分是我不希望在执行计划中有任何内部循环,因为这意味着ProductId表中的每个额外读取,这是非常低效的.

这应该可以使用相同的非聚集索引扫描,然后是流聚合,但是我似乎无法找到可以执行此操作的查询.任何的想法?

谢谢

sql t-sql sql-server

11
推荐指数
1
解决办法
5274
查看次数

SQL:将所有记录从一个表插入另一个表而不指定列

我想将备份表foo_bk中的所有记录插入foo表而不指定列.

如果我尝试这个查询

INSERT INTO foo 
SELECT *
FROM foo_bk
Run Code Online (Sandbox Code Playgroud)

我将收到错误"插入错误:列名称或提供的值的数量与表定义不匹配".

是否可以在不提供列名的情况下从一个表批量插入到另一个表?我谷歌它但似乎无法找到答案.所有答案都需要特定的列.

sql sql-server syntax

11
推荐指数
4
解决办法
10万
查看次数

MySQL查询JOIN取决于CASE

我现在知道,CASE只能在WHERE上下文中使用.虽然,我需要根据column价值使用不同的表.我试过的看起来像这样:

SELECT
    `ft1`.`task`,
    COUNT(`ft1`.`id`) `count`
FROM
    `feed_tasks` `ft1`
CASE
    `ft1`.`type`
WHEN
    1
THEN
    (INNER JOIN `pages` `p1` ON `p1`.`id` = `ft1`.`reference_id`)
WHEN
    2
THEN
    (INNER JOIN `urls` `u1` ON `u1`.`id` = `ft1`.`reference_id`)
WHERE
    `ft1`.`account_id` IS NOT NULL AND
    `a1`.`user_id` = {$db->quote($user['id'])}
Run Code Online (Sandbox Code Playgroud)

既然我知道这是无效的语法,那么最接近的选择是什么?

mysql sql

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

使用来自不同表的WHERE语句从SQL Server中删除行

我需要根据两个表中的混合where语句从表中删除一些行.

我试过这个:

delete from tblI t1, tblS t2 
where t2.rcode = 'ALA' and t1.sid > 5
Run Code Online (Sandbox Code Playgroud)

但我得到一个语法错误.请帮我解决这个问题

将其更改为JOINS:

delete from tblI
inner join tblS
on tblI.sourceid = tblS.sourceid
where tblS.rcode = 'ALA' and tblI.sourceid > 5
Run Code Online (Sandbox Code Playgroud)

但有些事情仍然是错误的,请帮助.

sql t-sql sql-server sql-server-2008

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