권장 : ASP는 타원으로 긴 제목의 끝을 구현합니다. 데이터베이스에서 긴 기사를 추출하면 항상 웹 페이지의 레이아웃이 방해됩니다. 그래서 나는 캐릭터의 일부를 고정으로 추출하고 싶다. 그리고 나서 ... 나중에 대체품이있다. 1. 원리 : 기사의 길이가 지정된 길이를 초과하는지 여부를 결정하십시오. 지정된 길이를 초과하면 지정된 길이 만 표시됩니다.
많은 ASP 프로그래머는 데이터베이스 쿼리를 실행 한 다음 쿼리 결과를 HTML 테이블로 표시 한 경험이 있습니다. 보통 우리는 이것을합니다 :
| 다음은 인용 된 내용입니다. <% '연결 / 레코드 세트를 만듭니다 '데이터를 레코드 세트 객체로 채우십시오 %> <테이블> < %는 rs.eof %>가 아닙니다 <tr> <td> <% = rs (Field1)%> </td> <td> <% = rs (Field2)%> </td> . </tr> <% rs.movenext 루프 %> </테이블> |
쿼리 결과가 많이 있으면 처리 할 응답이 많기 때문에 서버는 ASP 스크립트를 설명하는 데 많은 시간이 걸립니다. 모든 출력 결과를 긴 문자열 (<pable>에서 </table>)으로 넣으면 서버는 응답을 해석하면 훨씬 빠릅니다. Microsoft의 유능한 사람들은 아이디어를 현실로 바 꾸었습니다. (이것은 Ado 2.0 이상의 기능입니다. 이전 버전을 사용하는 경우 최신 버전으로 업그레이드하십시오).
GetString 메소드를 사용하면 하나의 응답 만 사용하여 write를 사용하여 모든 출력을 표시 할 수 있습니다. 이는 레코드 세트가 EOF인지 결정할 수있는 DO ... 루프 루프와 같습니다.
GetString의 사용은 다음과 같습니다 (모든 매개 변수는 선택 사항입니다).
String = recordset.getString (StringFormat, Numrows, ColumnDelimiter, RowDelimiter, Nullexpr)
레코드 세트 결과에서 HTML 테이블을 생성하려면 GetString의 5 가지 매개 변수 중 3 개만 관리하면됩니다.
ColumnDelimiter (레코드 세트의 열을 분리하는 HTML 코드), RowDelimiter (레코드 세트의 행을 분리하는 HTML 코드) 및 NullexPR (현재 레코드가 비어있을 때 생성 해야하는 HTML 코드). 아래의 html 표를 생성하는 예에서 볼 수 있듯이 각 열은 <td> ... </td>로 분리되고 각 행은 <tr> ... </tr>로 분리됩니다. 예제의 코드를 살펴 보겠습니다.
| 다음은 인용 된 내용입니다. < %@ language = vbscript %> <% 옵션 명시 적 '좋은 코딩 기술 'DB와의 연결을 설정하십시오 Dim Conn set conn = server.createobject (adodb.connection) conn.open dsn = Northwind; '레코드 세트를 만듭니다 희미한 Rs set rs = server.createobject (adodb.recordset) Rs. Open Select * From Table1, Conn '우리의 큰 끈을 저장하십시오 희미한 strtable strtable = rs.getstring (,, </td> <td>, </td> </tr> <td> <td> ,)) %> <html> <body> <테이블> <tr> <td> < % response.write (strtable) %> </tr> </td> </테이블> </body> </html> <% '대청소! Rs.Close RS = 아무것도 설정하지 않습니다 conn.close Conn = 아무것도 설정하지 않습니다 %> |
strtable 문자열은 Select *의 HTML 테이블 결과에서 생성하는 코드를 표 1에서 저장하는 데 사용됩니다.
HTML 테이블의 각 열 사이에는 </td> <td> HTML 코드가 있으며 각 행 사이의 HTML 코드는 </td> </td> <td> <td>입니다. GetString 메소드는 올바른 HTML 코드를 출력하여 Strtable에 저장하므로 데이터 세트의 모든 레코드를 출력하려면 하나의 응답 만 필요합니다. 쿼리 결과가 다음 행과 열을 반환한다고 가정하면 간단한 예를 살펴 보겠습니다.
| 다음은 인용 된 내용입니다. col1 col2 col3 Row1 Bob Smith 40 Row1 Ed Frank 43 Row1 Sue void 42 |
그런 다음 GetString 문에 의해 반환 된 문자열은 다음과 같습니다.
| 다음은 인용 된 내용입니다. Bob </td> <td> smith </td> <td> 40 </td> <td> </td> </td> </tr> <tr> < TD > 에드 ... |
솔직히 말해서이 문자열은 길고 지저분 해 보이지만 우리가 원하는 HTML 코드입니다. (필기 된 HTML 코드에서, 우리는 <table> <tr> <td>를 응답 앞에, </td> </tr> </table> 뒤에 넣습니다. 이것은 우리의 형식의 문자열 이이 테이블의 시작과 끝에 필요한 문자열을 포함하지 않기 때문입니다.)
공유 : ASP의 데이터베이스 호출의 일반적인 오류 및 솔루션 다음은 ASP 프로그램의 데이터베이스 호출의 일부 오류이며 가상 머신 유지 보수 중에 종종 발생합니다. 이제 우리는 다음과 같이 수집하고 구성합니다. 레지스트리 키워드 (8007000e) ODBC 드라이버에 대한 Microsoft Ole DB 제공 업체 오류 '8007000e'[MICL