为一篇冗长的帖子道歉,但我需要发布一些代码来说明问题.
灵感来自问题*什么是不使用选择的原因?,我决定指出一些我之前注意到的select*行为的观察结果.
让我们的代码说明一切:
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[starTest]') AND type in (N'U'))
DROP TABLE [dbo].[starTest]
CREATE TABLE [dbo].[starTest](
[id] [int] IDENTITY(1,1) NOT NULL,
[A] [varchar](50) NULL,
[B] [varchar](50) NULL,
[C] [varchar](50) NULL
) ON [PRIMARY]
GO
insert into dbo.starTest(a,b,c)
select 'a1','b1','c1'
union all select 'a2','b2','c2'
union all select 'a3','b3','c3'
go
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[vStartest]'))
DROP VIEW [dbo].[vStartest]
go
create view dbo.vStartest as
select * from dbo.starTest …Run Code Online (Sandbox Code Playgroud) 在Sql Server 2005中,应使用什么数据类型来存储SHA-256算法散列的密码?
数据由应用程序进行散列并传递给数据库
基本上我有一个网站.我有一个正确设置的站点地图,因此我假设Google知道我的所有页面.我在某些网站上看到,搜索表单会显示一个包含原始网站外壳的页面,但结果显然是由Google提供的.与codinghorror.com的搜索类似,但他的搜索结果并未显示在他的网站布局中.
知道我在说什么或如何实现这个目标?
我最近在寻找一些网络托管解决方案,一些提供商提供了各种托管位置,例如美国或英国的服务器.
我的问题是:从性能的角度来看,它真的有所作为吗?让我们说我期待来自欧洲大陆的大部分流量?
如果流量来自英国,那么服务器位于英国的事实会产生更大的影响.
是否有与大多数预期流量在同一个县托管的网站的利弊?
每当我编写一个存储过程来根据字符串变量(varchar,nvarchar,char)选择数据时,我会有类似的东西:
procedure dbo.p_get_user_by_username(
@username nvarchar(256)
as
begin
select
u.username
,u.email
--,etc
from
sampleUserTable u
where
u.username = @username
end
Run Code Online (Sandbox Code Playgroud)
所以换句话说就是匹配我所拥有的记录
u.username = @username
Run Code Online (Sandbox Code Playgroud)
但有时我会遇到使用LIK E代替=的代码
u.username like(@username)
Run Code Online (Sandbox Code Playgroud)
你什么时候用它?不应该仅在需要一些通配符匹配时才使用它吗?
编辑
谢谢你的回答.
我认为我需要澄清一下,我真正想要问的是:如果可能存在这样的情况,那么首选使用"="代替精确的字符串匹配.从答案我可以说不会有.根据我自己的经验,即使在我需要忽略例如case,以及前导和结束空间的情况下,我会在两个字符串上使用ltrim,rtrim,lower然后"=".再次感谢您的输入.
可以从内容页面访问母版页的元素吗?
假设我有继承MasterPage1的MasterPage1和ContentPage1,MasterPage1有一个按钮:Button1.
我可以从内容页面更改该按钮的属性,例如使Button1不可见,不活动等吗?我怎么能做到这一点?
我正在使用.net2.0
为了存储使用OpenId登录的用户的用户信息,我计划创建用户表.
我的问题是这个新用户表将包含我希望asp.net会员用户也能够填写的新字段(配置文件数据).
我的计划是当用户想要用户名和密码时,他们注册并将信息插入到asp.net_Membership中,然后将他们的guid,username,createDate复制到新的用户表中,以便在代码中我可以只查找用户的数据表,如果他们在OpenId或asp.net会员注册,这无关紧要.
我想覆盖Membership.GetUser,以便它查找我的新用户表,我将添加web.config配置文件属性.
是否更好的性能而不是使用Membership.GetUser(我将调用新的User表):
User user = _repository.GetUser(userId);
Run Code Online (Sandbox Code Playgroud)
我的应用程序已经在工作,我需要添加一些页面的引用来支持_repository,所以我只是考虑性能.
我计划创建一个新的用户表吗?我不喜欢复制的想法但是如果将来我想要更改用户名,那么更新新用户表和asp.net_Membership表并不麻烦.
我应该覆盖GetUser并在web.config中添加配置文件属性还是调用我自己的User对象?
创建新用户表并复制核心数据是最好的方法吗?
我正在尝试使用谷歌搜索我的网站:
http://www.houseofhawkins.com/search.php
某些屏幕分辨率并不好看.以下是谷歌提供的代码:
<div id="cse-search-results"></div>
<script type="text/javascript">
var googleSearchIframeName = "cse-search-results";
var googleSearchFormName = "cse-search-box";
var googleSearchFrameWidth = 250;
var googleSearchDomain = "www.google.com";
var googleSearchPath = "/cse";
</script>
<script type="text/javascript" src="http://www.google.com/afsonline/show_afs_search.js"></script>
Run Code Online (Sandbox Code Playgroud)
我将"googleSearchFrameWidth"更改为250认为应该在px中设置宽度,(以600开头).但是对于较小的屏幕(1024*768),它突出了我的div的一面.
我做了些蠢事吗?
我正在研究一个存储过程,它对类中的学生执行一些操作
在最后一步中,它根据某些标准更新了一些学生的状态.
这一切都很直接,但我在这里陷入两难境地.基本上系统中存在一个名为sp的sp
pUpdateStudentStatus(studentID, statusID, comments, userID)
Run Code Online (Sandbox Code Playgroud)
只要更新单个用户的状态,应用程序就会使用此sp.除了更新状态外,它还会记录StudentStatusHistory表中的更改.
所以这就是我的困境,
还有其他选择吗?你会选哪一个?
我相信使用更新触发器的替代方法不是一种方法,因为我需要一些额外的细节,例如更改状态的用户的userId和注释
我使用的是SqlServer2005
sql-server ×4
sql ×3
asp.net ×2
.net ×1
encryption ×1
hosting ×1
like-keyword ×1
master-pages ×1
openid ×1
passwords ×1
search ×1
security ×1
t-sql ×1
types ×1
views ×1