① 怎麼取出web sql database中的數據 並放在input框中
取出web sql database中的數據並放在input框中的方法是用欄位對應映射法。
1. 建立數據訪問對象文件
在db目錄中新建db.js,其中代碼如下:
var mysql = require('mysql');
var options = {
host: 'localhost',
user: 'lupeng',
password: '080910',
database: 'myapp'
}
exports.createConn = function (){
var client = mysql.createConnection(options);
return client;
}
exports.getUsers = function (client,callback){
var selectstatement = 'select * from user';
client.query(selectstatement, function(errs,rows,fields){
if (errs){
callback(errs);
}
if (rows){
console.log(rows);
callback(rows);
}
});
}
上述代碼簡單實現了兩個方法,一個是獲取資料庫對象createConn,一個是獲取用戶的方法getUsers。注意得到資料庫數據後,作為參數賦予回調函數callback。
2. 編輯路由方法
當訪問到某個路徑的時候,查詢資料庫,並返回結果,最終通過res對象將內容發送到客戶端上。app.js中編寫路由方法如下:
var db = require('../db.js');
// ... 省略
app.get('/',function(req,res){
var client = db.createConn();
db.getUsers(client,function(results){
if(results){
res.render('index',{results: results});
}
});
});
首先調用createConn方法獲取資料庫對象client,然後調用getUsers方法取得數據,實現回調函數,將數據回傳回來,最後通過res對象發送至前台頁面。
3. view模版設置
res對象渲染index頁面,最終顯示在前端。這里使用的是jade模版引擎,下面看看index.jade示例代碼:
doctype html
html
head
title= title
link(href='/bootstrap.min.css',rel='stylesheet')
body
.container
.row
h1 讀取用戶資料庫
small Mysql
.table-responsive
table.table
thead
tr
th ID
th 用戶名
th 密碼
tbody
each item in results
tr
td= item.id
td= item.username
td= item.password
前台顯示如下圖,一個列印了資料庫數據的簡單頁面。
② html5 web sql遇到的問題求幫助
第一,你對技術不夠了解,無法體現精髓。
第二,凡是新的都不一定能普遍應用,而不能普遍應用的,價值也就不高咐老舉。
可以聯想一下真正的大廚比賽,凡是用料最奢華、搞得最繽紛的菜,一定會敗給外表樸素內容卻不平淡但也絕不是簡單的強烈刺激的菜,因為真正比含衫拼的是製作者的各方面基本功和對衡碧色香味意境界的理解。
因此,哪怕兩個人在境界和功夫上真的具有相同的水平,那麼選擇樸素平常的也比選擇奢華新奇的要得分高,因為他更自信。
③ 怎樣讓業務員也能在web頁面上構造sql語句
那你就把查詢語句寫好把可變的東西留給業務員填寫!
④ 求解web項目中sql語句select * from tcapacity where tname= 預編譯問題
你用預處理的時候的tname是個變數,但是你下面那個sql這么寫相當於兩個欄位在比較,這樣永遠是true了,你如果要比較tname這個字元串,應該用tname='tname',要有引號才對
⑤ HTML5 Web SQL 資料庫怎樣實現多表查詢
HTML5的Web SQL Databases(html5 本地資料庫)的確很誘惑人,當你發現可以用與mysql查詢一樣的查詢語句來操作本地資料庫時,你會發現這東西挺有趣的。今天,我們一起來了解HTML 5的Web SQL Database API:openDatabase、transaction、executeSql。
Web SQL資料庫API實際上不是HTML5規范的組成部分,而是單獨的規范。它通過一套API來操縱客戶端的資料庫。Safari、Chrome、Firefox、Opera等主流瀏覽器都已經支持Web SQL Database。HTML5的Web SQL Databases的確很誘惑人,當你發現可以用與mysql查詢一樣的查詢語句來操作本地資料庫時,你會發現這東西挺有趣的。今天,我們一起來了解HTML 5的Web SQL Database API。
下面將一一將介紹怎樣創建打開資料庫,創建表,添加數據,更新數據,刪除數據,刪除表 。
先介紹三個核心方法
1、openDatabase:這個方法使用現有資料庫或創建新資料庫創建資料庫對象。
2、transaction:這個方法允許我們根據情況控制事務提交或回滾。
3、executeSql:這個方法用於執行真實的SQL查詢。
第一步:打開連接並創建資料庫
代碼如下:
var dataBase = openDatabase("student", "1.0", "學生表", 1024 * 1024, function () { });
if (!dataBase) {
alert("資料庫創建失敗!");
} else {
alert("資料庫創建成功!");
}
解釋一下openDatabase方法打開一個已經存在的資料庫,如果資料庫不存在,它還可以創建資料庫。幾個參數意義分別是:
1,資料庫名稱。
2,版本號 目前為1.0,不管他,寫死就OK。
3,對資料庫的描述。
4,設置數據的大小。
5,回調函數(可省略)。
初次調用時創建資料庫,以後就是建立連接了。
創建的資料庫就存在本地,路徑如下:
C:\Users\Administrator\AppData\Local\Google\Chrome\User Data\Default\databases\http_localhost_4987 。
創建的是一個sqllite資料庫,可以用SQLiteSpy打開文件,可以看到裡面的數據。SQLiteSpy是一個綠色軟體,可以網路一下下載地址或SQLiteSpy官方下載:SQLiteSpy。
第二步:創建數據表
代碼如下:
this.createTable=function() {
dataBase.transaction( function(tx) {
tx.executeSql(
"create table if not exists stu (id REAL UNIQUE, name TEXT)",
[],
function(tx,result){ alert('創建stu表成功'); },
function(tx, error){ alert('創建stu表失敗:' + error.message);
});
});
}
解釋一下,
executeSql函數有四個參數,其意義分別是:
1)表示查詢的字元串,使用的SQL語言是SQLite 3.6.19。
2)插入到查詢中問號所在處的字元串數據。
3)成功時執行的回調函數。返回兩個參數:tx和執行的結果。
4)一個失敗時執行的回調函數。返回兩個參數:tx和失敗的錯誤信息。
第三步:執行增刪改查
1)添加數據:
代碼如下:
this.insert = function () {
dataBase.transaction(function (tx) {
tx.executeSql(
"insert into stu (id, name) values(?, ?)",
[id, '徐明祥'],
function () { alert('添加數據成功'); },
function (tx, error) { alert('添加數據失敗: ' + error.message);
} );
});
2)查詢數據
代碼如下:
this.query = function () {
dataBase.transaction(function (tx) {
tx.executeSql(
"select * from stu", [],
function (tx, result) { //執行成功的回調函數
//在這里對result 做你想要做的事情吧...........
},
function (tx, error) {
alert('查詢失敗: ' + error.message);
} );
});
}
解釋一下
上面代碼中執行成功的回調函數有一參數result。
result:查詢出來的數據集。其數據類型為 SQLResultSet ,就如同C#中的DataTable。
SQLResultSet 的定義為:
代碼如下:
interface SQLResultSet {
readonly attribute long insertId;
readonly attribute long rowsAffected;
readonly attribute SQLResultSetRowList rows;
};
其中最重要的屬性—SQLResultSetRowList 類型的 rows 是數據集的「行」 。
rows 有兩個屬性:length、item 。
故,獲取查詢結果的某一行某一列的值 :result.rows[i].item[fieldname] 。
3)更新數據
代碼如下:
this.update = function (id, name) {
dataBase.transaction(function (tx) {
tx.executeSql(
"update stu set name = ? where id= ?",
[name, id],
function (tx, result) {
},
function (tx, error) {
alert('更新失敗: ' + error.message);
});
});
}
4)刪除數據
代碼如下:
this.del = function (id) {
dataBase.transaction(function (tx) {
tx.executeSql(
"delete from stu where id= ?",
[id],
function (tx, result) {
},
function (tx, error) {
alert('刪除失敗: ' + error.message);
});
});
}
5)刪除數據表
代碼如下:
this.dropTable = function () {
dataBase.transaction(function (tx) {
tx.executeSql('drop table stu');
});
}
⑥ .net如何將用Web編輯器假如sql資料庫中的的圖片和文字讀取出來
首先在代碼中要有連接資料庫,接下來可以寫生圓銷氣了簡陵語句從資料庫中讀取數據,將讀取出來的數據按你自己的要求存放哪些字橘咐游段,最後顯示在控制項中
⑦ 在web窗體上點擊增加按鈕,怎樣寫sql語句
前台用Ajax,後台可以用PHP、JSP等
前台:JavaScrip部分: var btn=document.getElementById("btn");
btn.addEventListener("click",function(){
var xhr=new XMLHttpRequest();
xhr.open("POST","index.php",true);
var data=xxxx;//你要傳入後台的數據
xhr.setRequestHeader("content-Type","application/x-www-form-urlencoded");
xhr.send(data);
},false);後台:<?php
$data=$_POST[];
var con=mysql_connect($host,$user,$pass);
mysql_select_db("");
mysql_query("set names utf8");
mysql_query("insert into table(id,name,class) values(12,"何怡",2)";//你對資料庫進行的操作
mysql_close($con);
?>
⑧ 怎樣使用HTML5中的Web SQL DataBase本地資料庫增刪改查
首先來看看怎樣創建資料庫:
1、創建資料庫
var db = window.openDatabase("mydata", "1.0","資料庫描述",20000);
//window.openDatabase("資料庫名字", "版本","資料庫描述",資料庫大小);
if(db)
alert("新建資料庫成功!");
2、怎樣連接資料庫
db.transaction(function(tx) {
tx.executeSql("CREATE TABLE test (id int UNIQUE, mytitle TEXT, timestamp REAL)");
});
上面是新建數據表!本地資料庫是通過db.transaction()函數來實現的,再看下面的代碼吧!
插入記錄:
db.transaction(function(tx) {
tx.executeSql("INSERT INTO test (mytitle, timestamp) values(?, ?)", ["WEB Database", new Date().getTime()], null, null);
});
更新記錄:
db.transaction(function(tx) {
tx.executeSql("update test set mytitle=? where mytitle = 'fsafdsaf'",['xp'],null,null);
});
查詢記錄:
db.transaction(function(tx) {
tx.executeSql("SELECT * FROM test", [],
function(tx, result) {
for(var i = 0; i < result.rows.length; i++){
document.write('<b>' + result.rows.item(i)['mytitle'] + '</b><br />');
}
}, function(){
alert("error");
});
});
刪除表:
db.transaction(function(tx) {
tx.executeSql("DROP TABLE test");
})