SQLの窓 イラストAC フリー素材

2019年08月14日

IE11 : new ActiveXObject("ADODB.Connection") で .accdb のテーブル一覧を jQuery で TABLE に作成する

関連する記事

VBScript : 3種のMDB(または accdb)内の テーブル一覧取得方法

var cn = new ActiveXObject("ADODB.Connection");
var rs = new ActiveXObject("ADODB.Recordset");
var schema;

// ******************************
// データベースの接続
// ******************************
function connectDb(){

	// データベースの処理
	var path = "C:\\Users\\sworc\\Documents\\hanbaic-set\\hanbaic.accdb";
	var connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";";

	cn.Open( connectionString );

	schema = cn.OpenSchema( 20, [,,,] );

}

// ******************************
// jQuery でテーブル作成
// https://docs.microsoft.com/ja-jp/sql/ado/reference/ado-api/schemaenum?view=sql-server-2017
// ******************************
function buildTable( ){

	while( !schema.EOF ) {

		var table_name = schema.Fields("TABLE_NAME").Value;
		if ( table_name.indexOf("MSys") == 0 ) {
			schema.MoveNext();
			continue;
		}

		var tr = $("<tr class='rowdata'></tr>")
			.appendTo("#tbl");

		$("<td></td>")
			.appendTo(tr)
			.css({
				"color": "#007bff",
				"text-decoration": "underline",
				"cursor": "pointer",
				"width": "250px"
			})
			.text(schema.Fields("TABLE_NAME").Value)
			// セルにイベントを作成
			.on("click", function(){

				console.log( $(this).text() );

			})
			;

		$("<td></td>")
			.appendTo(tr)
			.text(schema.Fields("TABLE_TYPE").Value);


		schema.MoveNext();
	}

	cn.Close();

}

$(function(){

	// ロード時の全ての行の表示
	connectDb();
	buildTable( );

});






posted by at 2019-08-14 21:09 | IE | このブログの読者になる | 更新情報をチェックする