2010-07-11 3 views
4

최근에 HTML5 및 로컬 DB 작성 및 사용에 관한 기사를 보았습니다. 또한 기존 Access Db 백엔드에 대한 Javascript 연결 문자열의 몇 가지 예를 살펴 보았습니다. Db를 빌드하고, 레코드를 미리로드하고, 웹 앱을 사용하여 Db를 연결하고 읽는 방법을 찾는 데 관심이 있습니다. 예를 들어, Windows에서 Sqlite Db 파일을 읽은 Tcl을 사용하여 많은 독립 실행 형 응용 프로그램을 만들었습니다. 기본적으로 응용 프로그램 (.exe 파일)과 Db 파일은 서버를 사용하지 않는 경우를 제외하고는 다른 Db 응용 프로그램과 같은 폴더 및 기능으로 서로 옆에 있습니다.Javascript 용 사전로드 된 로컬 데이터베이스 백엔드 (가능?)

웹 앱 (.html) 및 Db 파일을 사용하여 동일한 작업을 수행하고 싶습니다. 이것이 가능한지 아는 사람 있습니까? 예를 들어, 미리로드 된 단어가 백엔드에 저장되어있는 브라우저에서 실행되는 언어 응용 프로그램을 만들고 싶었습니다. 따라서 두 개의 파일, 웹 응용 프로그램 및 db 파일이 있습니다.

리소스에 대한 제안이나 링크는 정말 감사하겠습니다. 내가 닫을 수있는 유일한 것은 Javascript를 통해 OLE를 통해 Access에 연결하는 것이었지만 Sqlite와 같은 다중 플랫폼의 Db가 필요합니다.

감사합니다,

DFM

+0

모두 로컬로 원합니까? 웹 앱을 지정하기 때문에 다소 혼란 스럽습니다. 그것은 일종의 클라이언트/서버 것으로 가정합니다. –

+1

일반 앱을 빌드하기 만하면됩니다. GUI보다 더 나은 UI 툴킷이 있습니다. IMVHO;) –

+0

안녕하십니까? 예; 나는 그 모든 것이 지역적이되기를 바랄 것이다. 혼란을 드려 죄송합니다. 레코드로 Db 파일을 미리로드하고 미리로드 된 Db 파일에 연결할 html/JS 응용 프로그램을 작성하고 싶습니다. 서버 측 코딩을 사용하지 않으므로 모든 클라이언트 측 (즉, html, js, sql-connetion 문자열)이 될 것이고 웹 브라우저를 통해 렌더링됩니다. – user175328

답변

3

귀하의 웹 응용 프로그램, 로컬 데이터베이스 및 "프라이밍"데이터는 모두 어딘가에 시작해야합니다, 그래서 나는이 모든 라이브 연결 중에 압연 얻을 가정합니다 웹 서버. 이 첫 번째 조회가 발생하면 귀하는 :

  1. 페이지와 관련 코드를 전달하십시오.
  2. 자바 스크립트에서 데이터베이스의 존재 여부를 테스트하십시오.
    1. 존재합니까? 프라이밍이 필요 없습니다. 아무 것도하지 않거나 동기화 등
    2. 존재하지 않는가요? 그것을 구축하고 초기 데이터를 전달하십시오. 속도가 느린 경우 사용자에게 친근한 경고를 표시 할 수 있습니다. '설정, 기다려주세요.' "초기화 데이터베이스 : 10 %"...
  3. 설치 한 번 더 3 단계

이 없습니다 모든 데이터를 아래로 밀어있는 방법에 따라, 당신도 진행 표시 줄을 표시 할 수 있습니다 이 앱은 비 로컬 리소스를 가정하지 않고 코드를 작성하는 한 완전히 로컬 일 수 있습니다. 즉, 인터넷 연결이 필요하지 않습니다.

참고 :

+0

안녕하세요. 켄, 제안 해 주셔서 감사합니다. "HTML5 Local Db 시작하기"링크를 먼저 보았습니다. 유일한 문제는 html 파일이 실행될 때 Db가 생성되는 것처럼 보입니다. 그러나 html 파일에 기존의 미리로드 된 Db 파일을 포함시킬 수있는 것처럼 보이지 않습니다. – user175328

+0

질문 : 위와 같이 스타터 데이터베이스를 제공하는 것과 기존 데이터베이스를 "포함"하는 것 사이에 실질적인 차이가 있습니까? 두 경우 모두 데이터가 소스 (사용자, 서버)에서 브라우저 환경으로 이동해야합니다. 수요가 발생하면 더 많은 유연성을 얻는 것처럼 보일 것입니다. 나는 틀린 아이디어가 모든 데이터의 거대한 json 구조로로드 된 다른 HTML 문서를 포함하는 것이라고 생각한다 ... 그런 다음 초기 데이터베이스 구축 단계에서 시작 파일 프로세스를 어떻게 든이 참조 파일을 참조하게한다. –

+0

안녕하세요 켄, 당신의 제안이 가장 좋은 답변 인 것 같습니다. 그래서 수표를 클릭하고 요점을 추가했습니다. 현재 브라우저를 통해 실행되고 기존 로컬 데이터베이스에 연결되는 응용 프로그램을 빌드하는 데 사용할 수있는 코드 또는 코드 세트가없는 것 같습니다. 내 비전은 최종 사용자가 HTML/JS 응용 프로그램과 Db 파일을 바탕 화면 (브라우저 유형에 기반한 교차 플랫폼)에 붙여 넣을 수 있도록 허용하고 아무것도 설치하지 않을 궁극적 인 목표로 거기에서 실행하는 것이 었습니다. 감사 – user175328

3
당신은 자바 스크립트를 통해 이미 생성 된 SQLite는 DB 파일에 액세스 할 수 있습니다

. 이 링크의 "데이터베이스 파일 위치"영역을 확인하십시오. http://code.google.com/apis/gears/api_database.html

Google Gears는 알고 있지만 Gears는 SQLite를 사용하며 위치는 여전히 Gears없이 적용되며 sqlite db 파일 만 사용합니다.

예를 들어 파이어 폭스 추가 기능 'SQLite Manager'를 사용하여 로컬 컴퓨터에 sqlite db 파일을 만들었습니다.그때 나는 C에 해당 파일을 복사 : \ 사용자의 AppData \ 로컬 \ 구글 \ 크롬 \ 사용자 데이터 \ 기본 \ 데이터베이스를 \\ \ file__0

내가 구글 크롬에서 자바 스크립트를 사용하여 파일에 액세스 할 수 있었다 :

var db = null; 

    try { 
     if (window.openDatabase) { 
      db = openDatabase("mydbfile.sqlite", "1.0", "HTML5 Database API example", 200000); 
    .... 

Chrome에서 파일 이름을 신중하게 선택하면 각 sqlite db의 이름이 자동으로 ID 번호로 지정됩니다. 예를 들어 브라우저에서 JavaScript를 읽으려면 sqlite db 파일 이름을 14로 바꿔야합니다. 내가 이것을 한 후에, 그것은 챔피언처럼 일했고 모든 테이블, 데이터 등에 액세스 할 수있었습니다.

관련 문제