태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

티스토리 툴바


원문 : http://weblogs.asp.net/scottgu/archive/2006/12/19/tip-trick-how-to-run-a-root-site-with-the-local-web-server-using-vs-2005-sp1.aspx

------------------------------------------
내가 자주 받는 질문 중의 하나는

ASP.NET 웹사이트 프로젝트의 루트를 "/"로 할 수 있냐는 것이다.

VS 웹서버나 VS 2005 웹사이트 프로젝트 모델에서 말이다.



기본적으로 파일시스템 기반의 웹사이트 프로젝트를 실행하면,

VS는 가상 경로를 프로젝트 루트 디렉토리 이름으로 해서 실행한다.

예를 들어 프로젝트 이름이 "Foo"이면 "http://localhost:1234/Foo/"가 루트가 된다.

수많은 사람들이 원하는 것은 그냥 단순히 "http://localhost:1234/"로 실행되는 것이다.

80 포트가 사용되고 있지 않을 경우에는 "http://localhost"로 실행되어야 한다.

이렇게 하면 사이트 네비게이션과 url 다루는 로직이 훨씬더 간단해진다.



VS 2005 SP1이 나오기 전에는, IIS로 실행하도록 권했다.

(예전에 그에 관한 글들을 블로그에 올렸었다.)

좋은 뉴스를 전해주자면 VS 2005 SP1에서는 이렇게 만드는게 훨씬 쉬워졌다는 것이다.



- VS 2005 웹사이트 프로젝트의 루트를 "/"로 설정하는 단계별 지침

웹사이트 프로젝트의 루트를 "/"로 만드는 설정방법에 대해 살펴볼 것이다.

1) 기존의 웹사이트 프로젝트나 새로 만드는 프로젝트를 파일 -> 새 웹사이트 메뉴를 선택해서 연다.

2) Visual Studio의 솔루션 탐색기를 사용해서 웹사이트 프로젝트를 선택한다.

3) 속성창을 보면 웹사이트 프로젝트 속성들이 보일 것이다.

  우리가 할 작업과 관계있는 속성은 "가상 경로", "사용자 동적 포트", "포트 넘버" 3개다.

  "가상 경로"를 "/"로 바꾼다. 그리고 동적 포트 세팅을 "false"로 하고 특정 포트 넘버를 설정한다.

  (예를 들어 80포트가 사용중이면 8081로 하고 아니면 80으로 한다)

4) 페이지 하나를 클릭해서 실행해 본다. 웹서버가 "/"를 루트로 해서 실행될 것이다.



"http://localhost" 뒤에 ":8081"이 붙는 것을 주목하라.

이것은 IIS7이 이미 80포트를 점유하고 있기 때문이다.

만일 IIS7을 중지시키면 "http://localhost"로 설정할 수 있을 것이다.



이제 사이트맵에서도 "/"로 시작하게 만들 수 있다. (예: /products, /help 등등)

또한 redirect나 html에서도 그렇게 사용할 수 있다. (예: <a href="http://weblog.asp.netpath">)

물론 자바스크립트에서 가능하다. (<script src="http://weblogs.asp.net/js/library1.js"></script>)

출처 :
http://taeyo.pe.kr/threadboard/Content.asp?table=Board_Knowhow&seqs=1115&page=1
Posted by TIGERJUNE

트랙백 주소 http://tigerjune.tistory.com/trackback/154 관련글 쓰기

댓글을 달아 주세요

다음은 결과에 순번(rownumber)를 추가하여 보여주는 방법입니다.

USE Pubs
go
SELECT (
SELECT COUNT(*) FROM authors e2 WHERE
e2.au_id <= e.au_id
) AS rownumber
, au_id, au_lname
FROM authors e ORDER BY au_id

[실행 결과]
rownumber   au_id       au_lname
----------- ----------- ----------------------------------------
1           172-32-1176 White
2           213-46-8915 Green
3           238-95-7766 Carson
4           267-41-2394 O'Leary
5           274-80-9391 Straight
6           341-22-1782 Smith
7           409-56-7008 Bennet
8           427-17-2319 Dull
9           472-27-2349 Gringlesby
10          486-29-1786 Locksley
11       .............


출처 : Microsoft SQL Server 2000 나만의 노하우 & Tip

Posted by TIGERJUNE
TAG MSSQL

트랙백 주소 http://tigerjune.tistory.com/trackback/145 관련글 쓰기

댓글을 달아 주세요

  1. 2006/12/08 11:34

    2005에서는 row_number() 라는게 추가되서 아주 쉽게 할수 있습니다. 이미 아시겠지만 참고하시라고 ^^;;
    SELECT ROW_NUMBER() OVER(ORDER BY au_id) AS ROWNUM
    , au_id, au_lname
    FROM authors

select top 150000 newID() as code

select top 150000 newID() as code from  sysobjects

select top 150000 newID() as code from  sysobjects ta, sysobjects tb

select top 150000 newID() as code from  sysobjects ta, sysobjects tb, sysobjects tc

select X.code
from
(
select top 150000 left(replace(newID(),'-',''),16) as code
from  sysobjects ta, sysobjects tb, sysobjects tc
) X
group by X.code

Posted by TIGERJUNE
TAG SQL

트랙백 주소 http://tigerjune.tistory.com/trackback/140 관련글 쓰기

댓글을 달아 주세요

Enterprise Library for .NET Framework 2.0

This release of Enterprise Library for .NET Framework 2.0 includes:
Caching Application Block,
Cryptography Application Block,
Data Access Application Block,
Exception Handling Application Block,
Logging Application Block,
and Security Application Block


설명 및 다운로드 :
http://www.microsoft.com/downloads/details.aspx?FamilyId=5A14E870-406B-4F2A-B723-97BA84AE80B5&displaylang=en
Posted by TIGERJUNE
TAG ASP.NET, c#

트랙백 주소 http://tigerjune.tistory.com/trackback/139 관련글 쓰기

댓글을 달아 주세요

set ANSI_NULLS OFF
set QUOTED_IDENTIFIER OFF
GO
ALTER Proc [dbo].[up_AccountRejoin]
/*
////////////////////////////////////////////////////////////////////////
//  수정이전 프로시저
////////////////////////////////////////////////////////////////////////
*/
@Userid varchar(15),
@Password varchar(15),
@Identitynum char(20),
@reVal int output
as
Set Nocount on
Set Xact_Abort On
Declare @Globalid int

DECLARE @Name nvarchar(10)
DECLARE @Identity char(50)
DECLARE @Identitynumflag char(50)
DECLARE @Location1 nvarchar(50)
DECLARE @Location2 nvarchar(50)
DECLARE @address nvarchar(50)
DECLARE @Telnum varchar(14)
DECLARE @Celnum varchar(14)
DECLARE @Email varchar(50)
DECLARE @Emailw char(1)
DECLARE @Level char(1)
DECLARE @Smsflag char(1)
DECLARE @Emailflag char(1)
DECLARE @LeftDate datetime
DECLARE @Pclass char(1)
DECLARE @Ticket int
DECLARE @Sex char(1)
DECLARE @Age char(10)

--SELECT Process
IF EXISTS(Select 1 from tbl_Login a inner join tbl_LeaveMember b on a.f_globalid = b.f_globalid
  where a.f_loginid = @Userid AND a.f_password = @Password AND b.f_identitynum = @Identitynum )
Begin

 SELECT @Globalid = f_globalid FROM tbl_Login  WHERE f_loginid = @Userid  AND f_password = @Password
 
 SELECT @Name = f_name, @Identity = f_identitynum, @Identitynumflag = f_Identitynumflag,  @Location1 = f_location1, @Location2 = f_location2, @address = f_address, @Telnum = f_telnum, @Celnum = f_celnum, @Email = f_email, @Emailw = f_emailw, @LeftDate = f_leftdate, @Level = f_level, @Smsflag = f_smsflag, @Emailflag = f_emailflag, @Pclass = f_pclass, @Ticket = f_ticket, @Sex = f_sex, @Age = f_age
 FROM tbl_LeaveMember WHERE f_globalid = @Globalid
 
 UPDATE tbl_Member SET f_name = @Name, f_identitynum = @Identity, f_Identitynumflag = @Identitynumflag, f_location1 = @Location1, f_location2 = @Location2, f_address = @address, f_telnum = @Telnum, f_celnum = @Celnum, f_email = @Email, f_emailw = @Emailw, f_level = @Level, f_smsflag = @Smsflag, f_emailflag = @Emailflag, f_leftdate = NULL, f_pclass = @Pclass, f_ticket = @Ticket, f_sex = @Sex, f_age = @Age
 WHERE f_globalid = @Globalid

 set @reVal = 0 -- 정상 종료
 return
End
ELSE
Begin
 set @reVal = 2  -- 정보 틀림
 return
End

set ANSI_NULLS OFF
set QUOTED_IDENTIFIER OFF
GO
ALTER Proc [dbo].[up_AccountRejoin]
/*
////////////////////////////////////////////////////////////////////////
// 수정후
////////////////////////////////////////////////////////////////////////
*/
@Userid varchar(15),
@Password varchar(15),
@Identitynum char(20),
@reVal int output
as
Set Nocount on
Set Xact_Abort On

--SELECT Process
IF EXISTS(Select 1 from tbl_Login a inner join tbl_LeaveMember b on a.f_globalid = b.f_globalid
  where a.f_loginid = @Userid AND a.f_password = @Password AND b.f_identitynum = @Identitynum )
Begin
 Begin Tran
 Update tbl_Member SET f_name = B.f_name, f_identitynum = B.f_identitynum, f_Identitynumflag = B.f_Identitynumflag, f_location1 = B.f_location1, f_location2 = B.f_location2,
 f_address = B.f_address, f_telnum = B.f_telnum, f_celnum = B.f_celnum, f_email = B.f_email, f_emailw = B.f_emailw, f_level = B.f_level, f_smsflag = B.f_smsflag,
 f_emailflag = B.f_emailflag, f_leftdate = NULL, f_pclass = B.f_pclass, f_ticket = B.f_ticket, f_sex = B.f_sex, f_age = B.f_age 
 From tbl_Member U
 inner Join tbl_Login A on U.f_globalid = A.f_globalid
 Inner Join tbl_LeaveMember B on A.f_globalid = B.f_globalid
 where A.f_loginid
=@Userid
 IF @@ERROR <> 0 GOTO errorHandler

 UPDATE  tbl_Login SET f_status = 1  WHERE f_loginid =@Userid
 IF @@ERROR <> 0 GOTO errorHandler

 DELETE From tbl_LeaveMember From tbl_LeaveMember A inner Join  tbl_Login B on A.f_globalid = B.f_globalid WHERE B.f_loginid =@Userid
 IF @@ERROR <> 0 GOTO errorHandler
 
 Commit Tran
 set @reVal = 0 -- 정상 종료
 return
End
ELSE
Begin
 set @reVal = 2  -- 정보 틀림
 return
End

errorHandler:
  ROLLBACK TRAN
  SET @reVal = 1
  RETURN

Posted by TIGERJUNE
TAG SQL

트랙백 주소 http://tigerjune.tistory.com/trackback/138 관련글 쓰기

댓글을 달아 주세요

-- sp_table0
-- 디폴트로 유저 테이블을, 그외 시스템과 뷰를 보여준다.
-- 파라미터로는 'system','view','all'이 있다.

-- sp_column0 'dbo.user_t'
-- 해당 테이블의 컬럼을 보여준다
-- 파라미터로는 테이블명을 입력해야 한다.

-- sp_block0
-- 블러킹 대상과 블러킹된 대상리스트, BUFFER내의 데이터를 보여준다.

-- sp_server0
-- 서버의 기본 정보를 보여준다.

-- sp_dboption0
-- 데이터베이스 설정 옵션을 보여준다.
-- 파라미넡가 null인 경우 전체 DB의 옵션을 보여준다.

-- sp_filegroup0
-- 해당 DB의 파일&파일 그룹 정보를 보여준다.
-- 파라미터가 'all'일시 전체 DB의 파일&파일 그룹 정보를 보여준다.

-- sp_lock0
-- 락 정보를 보여준다.
-- 첫번째 파라미터는 server process id to check for locks
-- 두번째 파라미터는 other process id to check for locks

-- sp_index0
-- 해당 DB의 인덱스를 모두 보여준다.

-- sp_filepageno0
-- BINARY의 first값에서 파일번호와 페이지번호를 DECIMAL로 출력한다.

-- sp_constraint0
-- 해당 DB 전체의 제약사항이나 특정 오브젝트의 제약사항을 출력한다.

-- sp_trigger0
-- 해당 DB의 모든 트리거나 특정 오브젝트의 트리거를 출력한다.

-- sp_converthex0
-- 해당 오브젝트의 인덱스 관련 파일과 페이지번호를 전체 출력한다.

-- sp_spaceused0
-- 서버의 전체 DB에 대한 사이즈를 출력한다.

-- sp_rowlength0
-- 해당 DB의 Table, View의 Row길이를 출력한다.

-- sp_freedisksize0
-- 물리적 드라이브 가용량을 표시한다.

-- sp_object0
-- 파라미터 없이 모든 오브젝트를 표시하고 특정 파라미터 기입시 상세 설명이 출력된다.
-- 'help' 파라미터시 파라미터 help manual이 출력된다.

-- sp_showcontig0
-- 인덱스 조각화 정보를 전체와 기준값을 기준으로 보여준다.
-- 처음 파라미터는 조각화 수치 기준으로 필터링.
-- 두번째 파라미터는 해당 테이블만 적용.

다운로드 :





출처 :
http://www.sqlworld.pe.kr/mboard/mboard/mboard.asp?board_id=comm_pds&group_name=board&idx_num=4&page=1&category=&search=&b_cat=0&order_c=idx_num&order_da=desc

Posted by TIGERJUNE
TAG MSSQL

트랙백 주소 http://tigerjune.tistory.com/trackback/137 관련글 쓰기

댓글을 달아 주세요

--테이블 및 컬럼에 설명을 넣어보자

--tbl_01 테이블 설명 추가
exec sp_addextendedproperty N'MS_Description', N'01테이블', N'user', N'dbo', N'table', N'tbl_01'
GO

--tbl_01 테이블의 f_col1컬럼 설명 추가
exec sp_addextendedproperty N'MS_Description', N'첫컬럼', N'user', N'dbo', N'table', N'tbl_01', N'column', N'f_col1'

--설명 업데이트시 사용
exec sp_updateextendedproperty


--테이블 정보 확인
--value 컬럼값이 위에서 입력한 설명임.
Select X1.TABLE_QUALIFIER,X1.TABLE_OWNER, X1.TABLE_NAME, X1.COLUMN_NAME
,X1.TYPE_NAME, X1.LENGTH, X1.IS_NULLABLE,X1.value ,X1.COLUMN_DEF
,IS_PK = case
when X3.colid is null then null
else 'PK'
end
,IS_FK = case
when X2.colnm is null then null
else 'FK'
end
FROM
(
SELECT T2.GID, T2.TABLE_QUALIFIER,T2.TABLE_OWNER, T2.TABLE_NAME, T2.COLUMN_NAME
, T2.TYPE_NAME, T2.LENGTH, T2.IS_NULLABLE,T1.value ,T2.COLUMN_DEF, T2.colid
FROM
(
SELECT
GID = O.ID
,TABLE_QUALIFIER = convert(sysname,DB_NAME())
,TABLE_OWNER = convert(sysname,USER_NAME(o.uid))
,TABLE_NAME = convert(sysname,o.name)
,COLUMN_NAME = convert(sysname,c.name)
,TYPE_NAME = convert (sysname,case
when t.xusertype > 255 then t.name
else d.TYPE_NAME collate database_default
end)
,LENGTH = convert(int,case
when type_name(d.ss_dtype) IN ('numeric','decimal') then
OdbcPrec(c.xtype,c.length,c.xprec)+2
else
isnull(d.length, c.length)
end)
,COLUMN_DEF = text
,IS_NULLABLE = convert(varchar(254),rtrim(substring('NO YES',(ColumnProperty (c.id, c.name, 'AllowsNull')*3)+1,3)))
,c.colid
FROM
sysobjects o,
master.dbo.spt_datatype_info d,
systypes t,
syscolumns c
LEFT OUTER JOIN syscomments m on
c.cdefault = m.id
AND m.colid = 1
WHERE
o.id = c.id
AND o.xtype = 'U'
AND t.xtype = d.ss_dtype
AND c.length = isnull(d.fixlen, c.length)
AND (d.ODBCVer is null or d.ODBCVer = 2)
AND (o.type not in ('P', 'FN', 'TF', 'IF') OR (o.type in ('TF', 'IF') and c.number = 0))
AND isnull(d.AUTO_INCREMENT,0) = isnull(ColumnProperty (c.id, c.name, 'IsIdentity'),0)
AND c.xusertype = t.xusertype AND O.NAME<>'dtproperties'
) T2
LEFT OUTER JOIN (
select * from sysproperties
where name = 'MS_Description' and smallid != 0
) T1
on
T2.gid = T1.id
and T2.colid = T1.smallid
) X1
Left Outer join
(
select parent_obj [tb_id] , sc.name[colnm] , sc.colid from sysobjects so
inner join sysreferences sf on
so.id = sf.constid
inner join syscolumns sc on
(
sf.fkeyid = sc.id
and (
sf.fkey1 = sc.colid or sf.fkey2 = sc.colid
or sf.fkey3 = sc.colid or sf.fkey4 = sc.colid
or sf.fkey5 = sc.colid or sf.fkey6 = sc.colid
or sf.fkey7 = sc.colid or sf.fkey8 = sc.colid
or sf.fkey9 = sc.colid or sf.fkey10 = sc.colid
or sf.fkey11 = sc.colid or sf.fkey12 = sc.colid
or sf.fkey13 = sc.colid or sf.fkey14 = sc.colid
or sf.fkey15 = sc.colid or sf.fkey16 = sc.colid
)
)
where so.xtype='F'
) X2 on
X1.GID = X2.tb_id
and X1.colid = X2.colid
Left outer join (
select o.id, c.colid from sysobjects o, syscolumns c, sysindexes i, sysindexkeys k
where
o.id = c.id
and i.id = k.id
and i.indid = k.indid
and k.id = c.id
and k.colid = c.colid
and i.name like 'PK%'
) X3 on
X1.GID = X3.id
and X1.colid = X3.colid
order by X1.TABLE_QUALIFIER,X1.TABLE_OWNER, X1.TABLE_NAME,X1.colid

--간단히 커멘트 조회시
select object_name(a.id) [table],
b.name [column],
a.value [comments]
from sysproperties a join syscolumns b
on a.id = b.id and a.smallid = b.colid
order by 1,b.colid

Posted by TIGERJUNE
TAG MSSQL

트랙백 주소 http://tigerjune.tistory.com/trackback/136 관련글 쓰기

댓글을 달아 주세요

2006/10/11 14:48
유지 관리 문
DBCC DBREINDEX

DBCC DBREPAIR

DBCC INDEXDEFRAG

DBCC SHRINKDATABASE

DBCC SHRINKFILE

DBCC UPDATEUSAGE


기타 문
DBCC dllname (FREE)

DBCC HELP

DBCC PINTABLE

DBCC ROWLOCK

DBCC TRACEOFF

DBCC TRACEON

DBCC UNPINTABLE


상태 문
DBCC INPUTBUFFER

DBCC OPENTRAN

DBCC OUTPUTBUFFER

DBCC PROCCACHE

DBCC SHOWCONTIG

DBCC SHOW_STATISTICS

DBCC SQLPERF

DBCC TRACESTATUS

DBCC USEROPTIONS


유효성 검사 문
DBCC CHECKALLOC

DBCC CHECKCATALOG

DBCC CHECKCONSTRAINTS

DBCC CHECKDB

DBCC CHECKFILEGROUP

DBCC CHECKIDENT

DBCC CHECKTABLE

DBCC NEWALLOC

Posted by TIGERJUNE
TAG MSSQL

트랙백 주소 http://tigerjune.tistory.com/trackback/132 관련글 쓰기

댓글을 달아 주세요

저장 프로시저 그룹화

지난 스터디에서 배운건데, 실제 활용도는 별로 없을듯하나.
버전 관리등에 사용해도 괜찮아보임.

--* 파일명 : 저장 프로시저 그룹화
--* 작성자 : 이장래
--* 작성일 : 2006년 9월 23일
--* 내  용 : ;number를 사용한 저장 프로시저 그룹화 예제
-- usp_GetCustomer;1 저장 프로시저 만들기
CREATE PROC usp_GetCustomer;1
AS
SELECT CustomerID, City, CompanyName FROM Customers
ORDER BY CustomerID
GO
-- usp_GetCustomer;2 저장 프로시저 만들기
CREATE PROC usp_GetCustomer;2
AS
SELECT CustomerID, City, CompanyName FROM Customers
ORDER BY City
GO
-- 프로시저 수행하기
EXEC usp_GetCustomer;1
GO
EXEC usp_GetCustomer;2
GO
-- 프로시저 삭제하기
DROP PROC usp_GetCustomer
Posted by TIGERJUNE

트랙백 주소 http://tigerjune.tistory.com/trackback/120 관련글 쓰기

댓글을 달아 주세요

다시 한번 정리해볼수 있었던 좋은기회.

스터디 일시 : 9월 30일(토) 오후 2시~6시
장소 : 삼성동 MS 본사
스터디 리더 : http://www.sqlworld.pe.kr/ 이장래님

[스터디 자료]


Posted by TIGERJUNE

트랙백 주소 http://tigerjune.tistory.com/trackback/119 관련글 쓰기

댓글을 달아 주세요

이전버튼 1 2 3 4 5 이전버튼