저는 SQL에 익숙하지 않지만 jquery $ (document) .ready 문에서 javascript를 사용하여 html5 sql 저장소에 데이터베이스를 설정하려고합니다. 나는 크롬과 파이어 폭스에서 테스트를 해왔다.하지만 파이어 폭스는 전혀 작동하지 않으며, 크롬에있는 문제는 정적 값이라면 기본값을 잘 설정할 수 있다는 것이다. 그러나 시도 할 때 함수를 사용하면 일이 잘 풀리지 않습니다. 실제로이 함수가 매번 함수를 호출하기를 원할 때만이 코드가 기본 함수를 호출한다고 생각합니다. 그러나, 내가하려고 할 때 ErrorDB 함수가 호출됩니다. 여기에 코드입니다 : 나는 그건 내가 잘못된 데이터 유형뿐만 아니라 몇 가지 다른 일을 한 것으로하는 문제에 대한 해결책의 무언가를 발견javascript의 함수가있는 sql 열의 기본값
$(document).ready(function()
{
var db;
try{if(window.openDatabase){
db =openDatabase("fetchnotes", "1.0","fetchnotesDB",1000000);
if (!db) {alert("failed to load database on disk"); return;};
}
else{
alert("could not open database.");
return;
}
}catch(err){alert("error "+err); return;}
db.transaction(initializeDB, errorDB);
});
function initializeDB(tx){
tx.executeSql('Drop TABLE IF EXISTS NOTES');
tx.executeSql('CREATE TABLE IF NOT EXISTS'+
' NOTES(ID int primary key,NoteText, LastModified Date NOT NULL DEFAULT "'
+defaultLastModified()+ '")');
tx.executeSql('INSERT INTO NOTES (ID, NoteText) VALUES (1, "make a better database") ');
}
function errorDB(tx,err)
{
alert("error "+err);
}
function defaultLastModified()
{
var result= new Date();
return result;
}
좋아요. 수정 된 코드에 대한이 여기에 있습니다 : 당신이 기술적으로 그것을 밖으로 떠나는 것은 시간이 SQL 표준 인 GMT에있을 것입니다 것을 의미의 '의 현지을'필요하지 않습니다
tx.executeSql("CREATE TABLE IF NOT EXISTS"+
" NOTES(ID INTEGER PRIMARY KEY,NoteText TEXT ," +
"LastModified TIMESTAMP DEFAULT (datetime('now','localtime')));");
. 그러나 나는 여전히 사용자 정의 함수를 기본 값으로 가져 오는 방법을 여전히 모르고 있는데, 이것이 여전히 내 주요 질문입니다.
공개 애플리케이션입니까? – hsz