我们在Web应用程序中随机出现此错误.
System.Data.SqlClient.SqlException:建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)
如果我们有时间得到错误,但是间歇性地提出其他事情正在进行,那将是有意义的.
有没有人经历过这个?有什么建议或理论吗?
谢谢!
我有一个字符串'2009-06-24 09:52:43.000',我需要将其插入到表的DateTime列中.
但是我不在乎时间,只想插入它作为2009-06-24 00:00:00.000
我怎么能在T-SQL中做到这一点?
我有这样的查询:
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是独一无二的还不够吗?
Log Sequence Number是什么意思?我知道它是二进制类型和10bytes长,它对应于DB中事务发生的时间.但这是一个高精度的日期时间值,以某种有效的二进制格式存储,或者这是日期时间和其他东西的函数(例如,在相同的毫秒时间内发生的事务的序列号).我做了很多搜索,但找不到合适的答案.
任何人都可以解释用于从日期时间或任何事物中导出LSN的公式或函数.
TSQL - 如何查找列是否有空格char(32)?
select *
from [sometable]
where CHARINDEX(' ', [somecolumn]) > 0
Run Code Online (Sandbox Code Playgroud)
不起作用?有任何想法吗?
我正在尝试做一些相对简单的事情,吐出列名和各自的列值,并可能过滤掉一些列,这样就不会显示它们.
这是我尝试的(当然是在初始连接之后):
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) - 我该如何实现?
我有一个与T-SQL和SQL Server有关的问题.
假设我有一个包含2列的表订单:
我想要每个产品的第一个订单的日期,所以我执行这种类型的查询:
SELECT ProductId, MIN(Date) AS FirstOrder
FROM Orders
GROUP BY ProductId
Run Code Online (Sandbox Code Playgroud)
我有一个索引ProductId,包括列CustomerId和Date加速查询(IX_Orders).查询计划看起来像是非聚集索引扫描IX_Orders,后面是流聚合(由于索引没有排序).
现在我的问题是我还要检索CustomerId与每个产品的第一个订单相关联的产品(产品26在25日星期二首次订购,由客户12订购).棘手的部分是我不希望在执行计划中有任何内部循环,因为这意味着ProductId表中的每个额外读取,这是非常低效的.
这应该可以使用相同的非聚集索引扫描,然后是流聚合,但是我似乎无法找到可以执行此操作的查询.任何的想法?
谢谢
我想将备份表foo_bk中的所有记录插入foo表而不指定列.
如果我尝试这个查询
INSERT INTO foo
SELECT *
FROM foo_bk
Run Code Online (Sandbox Code Playgroud)
我将收到错误"插入错误:列名称或提供的值的数量与表定义不匹配".
是否可以在不提供列名的情况下从一个表批量插入到另一个表?我谷歌它但似乎无法找到答案.所有答案都需要特定的列.
我现在知道,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)
既然我知道这是无效的语法,那么最接近的选择是什么?
我需要根据两个表中的混合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 ×10
sql-server ×6
t-sql ×4
ado.net ×1
architecture ×1
asp.net ×1
cdc ×1
logging ×1
mysql ×1
postgresql ×1
python ×1
sqlalchemy ×1
syntax ×1