有没有一种直接的方法来使用SQL查找最后一次出现的字符串的索引?我现在正在使用SQL Server 2000.我基本上需要.NET System.String.LastIndexOf方法提供的功能.一个小的谷歌搜索透露了这个 - 函数来检索最后一个索引 - 但如果你传入一个"文本"列表达式,这不起作用.在其他地方找到的其他解决方案只有在您搜索的文本长度为1个字符时才起作用.
我可能不得不做一个功能.如果我这样做,我会在这里发布,所以你们大家可以看看它,也许可以利用它.
如何从数据库的所有表中删除所有记录?我可以使用一个SQL命令来执行此操作,还是每个表需要一个SQL命令?
有2个表,spawnlist而且npc,我需要从中删除数据spawnlsit.
npc_templateid = n.idTemplate是唯一"连接"表格的东西.我试过这个脚本,但它不起作用.
我试过这个:
DELETE s FROM spawnlist s
INNER JOIN npc n ON s.npc_templateid = n.idTemplate
WHERE (n.type = "monster");
Run Code Online (Sandbox Code Playgroud) 如何使用查询语句更改表名?
我使用了以下语法,但在SQL Server 2005中找不到rename关键字.
Alter table Stu_Table rename to Stu_Table_10
Run Code Online (Sandbox Code Playgroud) 我知道这几乎是重复的:错误"登录失败,用户NT AUTHORITY\IUSR""在ASP.NET和SQL Server 2008和用户登录失败"用户名" -在外部System.Data.SqlClient.SqlException与LINQ项目/类库但有些东西与我服务器上的其他应用程序相比并没有加起来,我不知道为什么.
正在使用的盒子:
Web Box
SQL框
SQL测试框
我的应用程序:
我有一个ASP.NET Web应用程序,它引用了一个使用LINQ-to-SQL的类库.连接字符串在类库中正确设置.按照在外部项目/类库System.Data.SqlClient.SqlException与LINQ -用户登录失败"用户名"我还添加了此连接字符串的Web应用程序.
连接字符串使用SQL凭据(在Web应用程序和类库中):
<add name="Namespace.My.MySettings.ConnectionStringProduction"
connectionString="Data Source=(SQL Test Box);Initial Catalog=(db name);Persist Security Info=True;User ID=ID;Password=Password"
providerName="System.Data.SqlClient" />
Run Code Online (Sandbox Code Playgroud)
此连接通过将其添加到服务器资源管理器确认为正常工作.这是我的.dbml文件正在使用的连接字符串.
问题:
我收到以下错误:
System.Data.SqlClient.SqlException: Login failed for user 'DOMAIN\MACHINENAME$'.
Run Code Online (Sandbox Code Playgroud)
现在引用ASP.NET和SQL Server 2008中的错误"登录失败的用户'NT AUTHORITY\IUSR'"它说真的是本地网络服务并且使用任何其他非域名都不起作用.
但我很困惑,因为我检查了SQL Box和SQL Test Box SQL Management Studio,并且都NT AUTHORITY/NETWORK SERVICE在安全 - >登录,在数据库级别,未列在安全 - >用户下,但在数据库级别安全 - >用户我将用户显示在连接字符串中.
在Web服务器上的NTFS级别,权限使NETWORK SERVICE具有完全控制权.
我之所以感到困惑,是因为我的Web服务器上有许多其他Web应用程序,它们在SQL Box和SQL Test Box上引用数据库,它们都可以工作.但除了我使用类库之外,我找不到它们和我当前的应用程序之间的区别.那会有关系吗?检查NTFS权限,服务器和数据库级别的安全登录设置,连接字符串和连接方法(SQL Server凭据)以及IIS应用程序池和其他文件夹选项都是相同的.
为什么这些应用程序在没有将machinename $添加到我的任何一个SQL框的权限的情况下工作?但这就是一个链接告诉我要解决这个问题的方法.
我在脚本中有一个表变量(不是存储过程).两个问题:
这是我的代码:
Declare @projectList table(
name varchar(40) NOT NULL);
Insert Into @projectList
Values ('BCR-00021')
Select *
From @projectList
Drop Table @projectList -- does not work
Run Code Online (Sandbox Code Playgroud)
我在表中有以下数据
PriceOrderShipped
PriceOrderShippedInbound
PriceOrderShippedOutbound
在SQL中我需要编写一个查询表中的字符串.在搜索字符串时,它应该忽略大小写.对于下面提到的SQL查询
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%'
Run Code Online (Sandbox Code Playgroud)
给出了所有上述数据,而
SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%'
Run Code Online (Sandbox Code Playgroud)
不给.
例如.当我搜索'PriceOrder'或'priceOrder'时它可以工作,但'priceorder'或'Priceorder'不起作用.我已尝试使用COLLATE进行以下查询,但它不起作用.请告诉我哪里出错了.
SELECT DISTINCT COL_NAME FROM myTable WHERE
COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'
Run Code Online (Sandbox Code Playgroud) 我应该使用LINQ Skip()和Take()方法进行分页,还是使用SQL查询实现自己的分页?
哪个最有效?为什么我会选择一个而不是另一个?
我正在使用SQL Server 2008,ASP.NET MVC和LINQ.
可能有人给我时,我应该使用一些指导WITH (NOLOCK),而不是SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
每个的优点/缺点是什么?是否有任何意外的后果,你使用一个而不是另一个?
也许我有一个'下午'的时刻,但任何人都可以解释为什么我得到
消息102,级别15,状态1,行2
'''附近的语法不正确.
跑步时
CREATE PROC DisplayDate
(@DateVar DATETIME)
AS
BEGIN
SELECT @DateVar
END
GO
EXEC DisplayDate GETDATE();
Run Code Online (Sandbox Code Playgroud) sql-server ×10
sql ×7
t-sql ×2
.net ×1
asp.net-mvc ×1
delete-row ×1
getdate ×1
ignore-case ×1
iis-6 ×1
inner-join ×1
linq-to-sql ×1
mysql ×1
pagination ×1
search ×1
sql-delete ×1
sql-like ×1
string ×1