資料庫直連
A. arc gis10.2能資料庫直連嗎
可以。ArcGIS 10.2連接資料庫如 sql Server 有兩種形式,支持資料庫直連。
B. c# 不直連 資料庫
C#無法直連資料庫,需要引入關於連接資料庫的頭文件,依賴等。C#連接資料庫的步驟:
1、把安裝好的MySQL目錄里的libmySQL.dll復制到C:Windowssystem32下;
2、把MySQL的頭文件添加到環境中;
3、把libmysql.lib添加到VS2010的項目中即可。
C. 關於資料庫直連的問題
你先檢查一下sqlserver的jdbc驅動程序的jar包部署的是否正確
再查一下資料庫伺服器是否正常,
然後再查一下連接地址字元串是否正確,,
我碰見過類似的問題,應該是jdbc包部署的問題,程序找不到驅動包
D. 數據源與JDBC直連資料庫的差異性是什麼數據源有哪些優勢
先說說題外話,你問這個問題,說明你在這個領域打拚還不久,因為對一些概念還不清晰,不過持續網路知道,多涉獵涉獵,你就能成為高手。
首先,JDBC直連資料庫,也稱為數據源,是數據源的一種方式。
其次,我猜測你理解的數據源,可能有2種:
1)連接池框架實現的數據源,譬如C3P0等等
2)應用伺服器上配置的數據源,譬如IBM WAS、tomcat上均可以配置JNDI數據源
最後,我簡單說明下這2種和JDBC直連的區別:
1)利用連接池框架,數據源連接後,如果不使用,可以暫時放到池中,不關閉連接,而直連是每次創建新的連接,使用完畢後,手工去關閉,下次要使用,再次創建、關閉。連接池框架實現了池的緩存能力後,就無需這樣了。
2)在伺服器上創建JNDI數據源,這樣做的原因是將開發工程師和WAS平台運維工程師的工作區分開,防止資料庫連接信息的泄露,保證信息安全。開發工程師無須知道資料庫的相關信息,只要在程序中使用JNDI數據源的名稱即可。WAS平台工程師在WAS上配置該JNDI數據源。
E. 中如何使用直連方式連接Oracle資料庫
在plsql中,數據源填寫 ip/實例名
如果埠不是1521,那麼寫成ip:埠/實例名
F. 為什麼我的資料庫不能直連
sql用的是1443埠監聽數據,在安裝資料庫的機器上用命令netstat
-anb看看1443埠有沒有打開,其次就是防火牆有沒有阻止埠,再就是打SQL
SP3
的補丁,再用企業管理器試試
要不然在本地的計算機上,用telnet
192.168.1.1
1443(這里的192.168.1.1
指資料庫伺服器的地址)試試,如果出現一個游標在閃說明埠已經打開,就是別的問題了。
G. java怎麼直連資料庫,
通過JDBC方式。需要載入相關的資料庫驅動包。
H. 資料庫直連如果不關閉資料庫是一直連著的嗎下次調用是什麼機制啊
對於DB
Connection,JVM突然崩潰,DB
Server是有辦法知道的,最起碼它知道Socket連接斷開了,資料庫連接依賴於它。我測試過Oracle和MySQL的連接,對Oracle的連接,如果不調用Connection.close()方法,即使Socket連接斷開了(比如JVM退出),伺服器端是不會關閉資料庫連接的,但是它設置有超時時間。對MySQL的連接,一旦Socket連接斷開,伺服器端就會自動關閉資料庫連接。
I. Unity3D與Sqlite資料庫是怎麼直連 成的求大夥為我解答啊
現在我們來研究一下Unity3D如何與Sqlite資料庫進行直連的問題
1、環境介紹:
Windows7,Unity3D,SQLite Expert Personal 3
2、開發語言:
JavaScript
3、需要的dll文件:
Mono.Data.Sqlite.dll和sqlite3.dll,稍後我會將所有文件打包在一起供大家討論下,先看下這些dll文件應該被放在哪裡,
要改動的地方我已經用紅色標記出來了,注意這個要改成.NET2.0,這樣才能夠發布的。系統默認的不是.NET2.0,大家這一點要注意!!!Modified 2011 by Alan Chatham */
//#pragma strict
/*代碼描述
*本代碼是為了在Windows環境下運行unity3d和Sqlite資料庫而寫的;實現的基本功能是unity3d能夠與資料庫之間進行基本的通信,比如說
在資料庫中的數據被改變了以後,unity3d中得到的數據也會在刷新了之後跟著改變;這只是一個基本的核心的技術,為的是能夠應用在大型的unity3d
項目中,能夠存儲場景中的項目的屬性,在需要改變對象的屬性或增加、減少等對象時能夠很方便的用得上。
要實現本代碼。首先需要一些dll文件,一個是Mono.Data.SQLiteClient.dll,另外一個是sqlite3.dll,這些文件都能夠在unity3d的安裝目錄中找得到。
除此之外,還需要把這兩個文件放在你的項目的這個路徑下面:AssetsPlugins,沒有Plugins文件夾就必須創建這個文件夾,然後將這兩個dll文件放在該文件夾寫。
當然,如果你想能夠在PC上面發布成可執行文件,還需要改動一些地方。在unity3d中的Play Setting ->Other Setting 中將Api Compatibility的等級改為
.NET 2.0;那麼這些操作做完了以後,如果你的代碼寫得沒有問題,那麼你就可以成功了。
好了,下面咱們來詳細解釋下代碼吧。
*
*/
import System.Data;// we import ourdata class 我們先導入我們的數據集
import Mono.Data.Sqlite; // we import sqlite 我們導入sqlite數據集,也就是Plugins文件夾下的那個dll文件
class dbAccess {
// variables for basic query access
private var connection : String; //資料庫的連接字元串,用於建立與特定數據源的連接
private var dbcon : IDbConnection; //IDbConnection的連接對象,其實就是一個類對象
private var dbcmd : IDbCommand; //IDbCommand類對象,用來實現操作資料庫的命令:註解:我在網上資料看到的如何實現對資料庫執行命令:
//首先創建一個IDbConnection連接對象,然後將一條資料庫命令賦值給一個字元串,利用這個字元串和連接對象
//就可以創建(new)一個IDbCommand對象了,然後使用提供的方法就可以執行這個命令了。
private var reader : IDataReader; //reader的作用就是讀取結果集的一個或多個只進結果流
function OpenDB(p : String){
connection = "URI=file:" + p; // we set the connection to our database
dbcon = new SqliteConnection(connection);
dbcon.Open(); //打開資料庫連接操作
}
function BasicQuery(q : String, r : boolean){ // run a c Sqlite query
dbcmd = dbcon.CreateCommand(); // create empty command
dbcmd.CommandText = q; // fill the command
reader = dbcmd.ExecuteReader(); // execute command which returns a reader返回IDataReader的對象,創建IDataReader的對象
if(r){ // if we want to return the reader
return reader; // return the reader 返回讀取的對象,就是讀到了什麼東西
}
}
// This returns a 2 dimensional ArrayList with all the
//data from the table requested
function ReadFullTable(tableName : String){
var query : String;
query = "SELECT * FROM " + tableName;
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
var readArray = new ArrayList();
while(reader.Read()){
var lineArray = new ArrayList();
for (var i = 0; i < reader.FieldCount; i++)
lineArray.Add(reader.GetValue(i)); // This reads the entries in a row
readArray.Add(lineArray); // This makes an array of all the rows
}
return readArray; // return matches
}
// This function deletes all the data in the given table.Forever.WATCH OUT! Use sparingly, if at all
function DeleteTableContents(tableName : String){
var query : String;
query = "DELETE FROM " + tableName;
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
}
function CreateTable(name : String, col : Array, colType : Array){ // Create a table, name, column array, column type array
var query : String;
query= "CREATE TABLE " + name + "(" + col[0] + " " + colType[0];
for(var i=1; i<col.length; i++){
query += ", " + col + " " + colType;
}
query += ")";
dbcmd = dbcon.CreateCommand(); // create empty command
dbcmd.CommandText = query; // fill the command
reader = dbcmd.ExecuteReader(); // execute command which returns a reader
}
function InsertIntoSingle(tableName : String, colName : String, value : String){ // single insert
var query : String;
query = "INSERT INTO " + tableName + "(" + colName + ") " + "VALUES (" + value + ")";
dbcmd = dbcon.CreateCommand(); // create empty command
dbcmd.CommandText = query; // fill the command
reader = dbcmd.ExecuteReader(); // execute command which returns a reader
}
function InsertIntoSpecific(tableName : String, col : Array, values : Array){ // Specific insert with col and values
var query : String;
query = "INSERT INTO " + tableName + "(" + col[0];
for(var i=1; i<col.length; i++){
query += ", " + col;
}
query += ") VALUES (" + values[0];
for(i=1; i<values.length; i++){
query += ", " + values;
}
query += ")";
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
}
function InsertInto(tableName : String, values : Array){ // basic Insert with just values
var query : String;
query = "INSERT INTO " + tableName + " VALUES (" + values[0];
for(var i=1; i<values.length; i++){
query += ", " + values;
}
query += ")";
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
}
// This function reads a single column
//wCol is the WHERE column, wPar is the operator you want to use to compare with,
//and wValue is the value you want to compare against.
//Ex. - SingleSelectWhere("puppies", "breed", "earType", "=", "floppy")
//returns an array of matches from the command: SELECT breed FROM puppies WHERE earType = floppy;
function SingleSelectWhere(tableName : String, itemToSelect : String, wCol : String, wPar : String, wValue : String){ // Selects a single Item
var query : String;
query = "SELECT " + itemToSelect + " FROM " + tableName + " WHERE " + wCol + wPar + wValue;
dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
reader = dbcmd.ExecuteReader();
var readArray = new Array();
while(reader.Read()){
readArray.Push(reader.GetString(0)); // Fill array with all matches
}
return readArray; // return matches
}
function CloseDB(){
reader.Close(); // clean everything up
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbcon.Close();
dbcon = null;
}
}
復制代碼
如果你還有什麼不懂的,可以網路搜下:編程回憶錄,他們現在正在錄制這方面的教程,都是零基礎開始,由淺入深。
J. 有沒有可以通過純前端(js,jquery)直連資料庫的方法
資料庫伺服器和web伺服器可以是分離的,也就是不在一台主機上。瀏覽器直接訪問資料庫有安全性的危險,大部分瀏覽器是不提供這種功能的。除非是CS架構的程序,等同於本地訪問資料庫。沒有專門的後台程序,以我的經驗,無法做到你描述的需求。